Function at 0x100feec0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xb0
mov esi, esp
mov eax, dword [ebp + 8]
mov dword [esi + 0x94], eax
mov eax, dword [0x101d3b48]
xor eax, ebp
mov dword [esi + 0xa8], eax
mov dword [esi + 0xa4], 0xa40dc802
lea eax, [esi + 0xa4]
mov dword [esi + 0xa0], eax
mov eax, dword [0x101d46c0]
mov dword [esi + 0x98], eax
mov eax, dword [esi + 0xa0]
mov dword [esi + 0x9c], eax
mov eax, dword [esi + 0xa4]
mov dword [esi + 0x90], eax
sub eax, 0x8cafe106
je 0x100ff2b3
jmp 0x100fef30
mov eax, dword [esi + 0x90]
sub eax, 0x8ef32f6b
je 0x100ffe14
jmp 0x100fef46
mov eax, dword [esi + 0x90]
sub eax, 0xa127d43f
je 0x100ffda8
jmp 0x100fef5c
mov eax, dword [esi + 0x90]
sub eax, 0xa40dc802
je 0x100ff053
jmp 0x100fef72
mov eax, dword [esi + 0x90]
sub eax, 0xa5613535
je 0x1010042c
jmp 0x100fef88
mov eax, dword [esi + 0x90]
sub eax, 0xa741d43f
je 0x1010030d
jmp 0x100fef9e
mov eax, dword [esi + 0x90]
sub eax, 0xbba01266
je 0x100ff7db
jmp 0x100fefb4
mov eax, dword [esi + 0x90]
sub eax, 0xdc932861
je 0x101002fc
jmp 0x100fefca
mov eax, dword [esi + 0x90]
sub eax, 0xdcf008f5
je 0x100ffe2e
jmp 0x100fefe0
mov eax, dword [esi + 0x90]
sub eax, 0xf43af5f2
je 0x100ffe03
jmp 0x100feff6
mov eax, dword [esi + 0x90]
sub eax, 0x25b387c
je 0x100ff8d6
jmp 0x100ff00c
mov eax, dword [esi + 0x90]
sub eax, 0xf5d57f9
je 0x10100476
jmp 0x100ff022
mov eax, dword [esi + 0x90]
sub eax, 0x43790e31
je 0x10100359
jmp 0x100ff038
mov eax, dword [esi + 0x90]
sub eax, 0x5578acad
je 0x100ff076
jmp 0x100ff04e
jmp 0x1010048b
mov eax, dword [esi + 0x9c]
mov edi, dword [esi + 0x98]
mov ecx, 0x8cafe106
mov edx, 0x5578acad
cmp edi, 0
cmove ecx, edx
mov dword [eax], ecx
jmp 0x1010048b
mov eax, dword [esi + 0x9c]
mov dl, byte [0x101d1043]
mov cl, dl
and cl, cl
xor cl, 0xff
xor cl, 0xff
mov ch, 0xff
xor ch, 0x8a
or cl, ch
mov ch, 0x8a
and ch, 0x8a
xor ch, 0xff
and dl, ch
xor dl, 0xff
and cl, dl
xor cl, 0xff
mov byte [0x101d1047], cl
mov cl, byte [0x101d1044]
mov dl, cl
xor dl, 0xaf
xor dl, 0xff
and dl, 0xaf
shl dl, 1
sub dl, 0xaf
sub cl, dl
mov byte [0x101d1048], cl
mov dl, byte [0x101d1045]
mov cl, dl
xor cl, 0xff
and cl, 0x31
mov ch, 0xff
xor ch, 0x31
and dl, ch
or cl, dl
mov byte [0x101d104b], cl
mov cl, byte [0x101d1021]
xor cl, 0xfc
mov byte [0x101d102b], cl
mov cl, byte [0x101d1022]
xor cl, 0x88
mov byte [0x101d102c], cl
mov dl, byte [0x101d1023]
mov cl, dl
xor cl, 0xff
mov ch, dl
xor ch, 0xff
or cl, ch
and cl, 0x7d
xor cl, 0xff
mov ch, 0xff
xor ch, 0x7d
mov dh, 0xff
xor dh, 0x7d
or ch, dh
xor dl, 0xff
xor ch, 0xff
or dl, ch
and cl, dl
xor cl, 0xff
mov byte [0x101d102d], cl
mov cl, byte [0x101d1024]
xor cl, 0x54
mov byte [0x101d102f], cl
mov dh, byte [0x101d1025]
mov cl, dh
xor cl, 0xff
and cl, 0x98
mov ch, 0xff
xor ch, 0x98
and dh, ch
mov dl, 0xff
xor dl, 0x1f
and dl, 0x98
and ch, 0x1f
or cl, dh
or dl, ch
xor cl, dl
mov byte [0x101d1030], cl
mov cl, byte [0x101d1026]
xor cl, 0xf5
mov byte [0x101d1031], cl
mov dl, byte [0x101d1027]
mov cl, dl
xor cl, 0xff
and cl, 0xa5
mov ch, 0xff
xor ch, 0xa5
and dl, ch
or cl, dl
mov byte [0x101d1033], cl
mov cl, byte [0x101d1028]
mov dl, cl
xor dl, 0x6f
xor dl, 0xff
and dl, 0x6f
shl dl, 1
sub dl, 0x6f
sub cl, dl
mov byte [0x101d1034], cl
mov dl, byte [0x101d1029]
mov cl, dl
and cl, cl
xor cl, 0xff
xor cl, 0xff
mov ch, 0xff
xor ch, 0x39
or cl, ch
mov ch, 0xff
xor ch, 0x39
mov dh, 0xff
xor dh, 0x39
or ch, dh
xor dl, 0xff
xor ch, 0xff
or dl, ch
and cl, dl
xor cl, 0xff
mov byte [0x101d1036], cl
mov cl, byte [0x101d102a]
xor cl, 0x51
mov byte [0x101d1037], cl
mov cl, byte [0x101d1038]
mov dl, cl
xor dl, 0x40
xor dl, 0xff
and dl, 0x40
shl dl, 1
sub dl, 0x40
sub cl, dl
mov byte [0x101d103c], cl
mov cl, byte [0x101d1039]
mov dl, cl
and dl, 0x8a
shl dl, 1
add cl, 0x8a
sub cl, dl
mov byte [0x101d103e], cl
mov dl, byte [0x101d103a]
mov cl, dl
and cl, cl
xor cl, 0xff
xor cl, 0xff
mov ch, 0xff
xor ch, 0x2a
or cl, ch
mov ch, 0xff
xor ch, 0x2a
mov dh, 0xff
xor dh, 0x2a
or ch, dh
and dl, ch
xor dl, 0xff
and cl, dl
xor cl, 0xff
mov byte [0x101d103f], cl
mov dl, byte [0x101d103b]
mov cl, dl
and cl, cl
xor cl, 0xff
xor cl, 0xff
mov ch, 0xff
xor ch, 0xf7
or cl, ch
mov ch, 0xff
xor ch, 0xf7
mov dh, 0xff
xor dh, 0xf7
or ch, dh
xor dl, 0xff
xor ch, 0xff
or dl, ch
and cl, dl
xor cl, 0xff
mov byte [0x101d1040], cl
mov dword [eax], 0x8cafe106
jmp 0x1010048b
mov eax, dword [0x101d2d48]
mov edi, dword [0x101d2d4c]
mov ecx, eax
xor ecx, 0xffffffff
mov edx, edi
and edx, ecx
mov ebx, edi
xor ebx, 0xffffffff
mov ecx, eax
and ecx, ebx
imul ecx, edx
mov edx, eax
and edx, edi
or eax, edi
imul eax, edx
add eax, ecx
mov ecx, eax
xor ecx, 0xb323dd53
xor ecx, 0xffffffff
or eax, 0xb323dd53
and eax, ecx
mov ecx, 0x2d6a39cd
xor edx, edx
div ecx
xor eax, 0x49669045
imul eax, eax, 0x1f16f830
and eax, 0x1e727d44
mov ecx, 0xf90d343a
xor edx, edx
div ecx
xor eax, 0xc118112f
imul ecx, eax, 0x808fdb9c
sub ecx, 0xaac1ecb8
add ecx, 0xbffb36e7
add ecx, 0xaac1ecb8
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x89c92026
mov eax, 0xffffffff
xor eax, 0x49a5e529
or ecx, edx
or eax, 0x49a5e529
xor ecx, 0xffffffff
and ecx, eax
mov eax, 0xffffffff
xor eax, 0xe8917b8d
xor edx, edx
sub edx, 1
sub eax, edx
sub ecx, eax
or ecx, 0x1f54dc7a
mov eax, ecx
xor eax, 0x904709f1
xor eax, 0xffffffff
and eax, 0x904709f1
shl eax, 1
sub eax, 0x904709f1
sub ecx, eax
mov eax, ecx
and eax, 0x478f08fa
xor ecx, 0x478f08fa
or eax, ecx
or eax, 0xfb91fd56
sub eax, 0xc27a9f45
or eax, 0xcd3257d5
mov ecx, eax
or ecx, ecx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x70203f11
mov edi, 0xffffffff
xor edi, 0x70203f11
and edx, edi
or ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x70203f11
and eax, edx
or ecx, eax
xor ecx, 0xffffffff
mov eax, ecx
xor eax, 0xf5b45b0c
xor eax, 0xffffffff
and eax, 0xf5b45b0c
shl eax, 1
sub eax, 0xf5b45b0c
sub ecx, eax
mov eax, ecx
xor eax, 0xc6a70df1
mov edx, 0xffffffff
xor edx, 0xc6a70df1
and ecx, edx
shl ecx, 1
sub ecx, eax
mov eax, ecx
and eax, 0x84e8086a
or ecx, 0x84e8086a
add eax, ecx
and eax, 0x7231161c
imul ecx, eax, 0xb8950fc4
or ecx, 0x2149b205
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xf1901491
or ecx, 0xf1901491
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
imul eax, eax, 0xcc34bb3e
xor eax, 0xfe7390c3
xor ecx, ecx
sub ecx, 0x870a8960
sub eax, ecx
sub eax, 0xa8517cc9
add eax, 0x6d36b40c
sub eax, 0x80e844d7
sub eax, 0x6d36b40c
add eax, 0x48867669
sub eax, 0x21efb498
sub eax, 0x48867669
mov edx, eax
xor edx, 0xffffffff
and edx, 0xb606b8e0
mov edi, 0xffffffff
xor edi, 0xb606b8e0
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0xb606b8e0
or eax, 0xb606b8e0
imul eax, edx
add eax, ecx
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x6e67b66c
add ecx, eax
xor eax, eax
sub eax, ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0xbbef4d17
add eax, ecx
sub eax, 0xb23d5139
sub eax, 0x8b8397f5
add eax, 0xb23d5139
add eax, 0x2f7c214
sub eax, 0x8fcfb8c3
sub eax, 0x2f7c214
and eax, eax
xor eax, 0xffffffff
mov ecx, 0xca6b3f14
and ecx, 0xca6b3f14
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0xffffffff
sub eax, 0xa3cfc411
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0xef6cb0f3
add ecx, eax
xor eax, eax
sub eax, ecx
xor eax, 0x97ca65b3
mov ecx, eax
and ecx, 0xbd6f490a
xor ecx, 0xffffffff
add eax, 0xbd6f490a
add eax, 1
add eax, ecx
mov ecx, 0xe77cdd39
xor edx, edx
div ecx
or eax, 0xc0de8d4c
and eax, 0x781ad383
and eax, 0xf53bfb29
or eax, 0x91d0a4c1
mov ecx, 0x78e08e19
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
xor eax, 0xfccf5b64
mov edx, 0xffffffff
xor edx, 0xfccf5b64
and ecx, edx
shl ecx, 1
sub ecx, eax
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x9e442633
mov eax, 0xffffffff
xor eax, 0xcaa9915d
or ecx, edx
or eax, 0xcaa9915d
xor ecx, 0xffffffff
and ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov dword [esi + 0x74], eax
mov edi, 0xffffffff
xor edi, 0x2c43056b
mov edx, 0xffffffff
xor edx, 0x73f593db
and eax, 0x73f593db
mov dword [esi + 0x70], eax
and ecx, edx
mov ebx, edi
and ebx, 0x73f593db
mov eax, edx
and eax, 0x2c43056b
mov dword [esi + 0x78], eax
mov eax, dword [esi + 0x70]
or eax, ecx
mov ecx, dword [esi + 0x74]
mov dword [esi + 0x7c], eax
mov eax, dword [esi + 0x78]
or ebx, eax
mov eax, dword [esi + 0x7c]
xor eax, ebx
or ecx, edi
xor ecx, 0xffffffff
or edx, 0x73f593db
and ecx, edx
or eax, ecx
mov ecx, 0xcb65b14b
xor edx, edx
div ecx
add eax, 0x76eeb333
mov ecx, 0xcd97096c
xor edx, edx
div ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x8c6c90db
mov ecx, 0xffffffff
xor ecx, 0xb336f7e1
or eax, edx
or ecx, 0xb336f7e1
xor eax, 0xffffffff
and eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
mov edx, eax
xor edx, 0xffffffff
or ecx, edx
and ecx, 0x21e9deed
xor ecx, 0xffffffff
mov edx, 0x21e9deed
and edx, 0x21e9deed
xor edx, 0xffffffff
xor eax, 0xffffffff
xor edx, 0xffffffff
or eax, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
or ecx, eax
mov edx, ecx
xor edx, 0xffffffff
and edx, 0xe5156bce
mov edi, 0xffffffff
xor edi, 0xe5156bce
mov eax, ecx
and eax, edi
imul eax, edx
mov edx, ecx
and edx, 0xe5156bce
or ecx, 0xe5156bce
imul ecx, edx
add ecx, eax
mov eax, ecx
add eax, 1
xor ecx, 0xffffffff
or ecx, 0x647bff7a
add ecx, eax
xor eax, eax
sub eax, 0xf0db824c
sub ecx, eax
mov edx, ecx
xor edx, 0xffffffff
mov ebx, 0xffffffff
xor ebx, 0xee9a66c1
mov edi, 0xffffffff
xor edi, 0x663bd20
mov eax, edx
and eax, 0x663bd20
mov dword [esi + 0x80], eax
and ecx, edi
mov eax, ebx
and eax, 0x663bd20
mov dword [esi + 0x88], eax
mov eax, edi
and eax, 0xee9a66c1
mov dword [esi + 0x84], eax
mov eax, dword [esi + 0x80]
or eax, ecx
mov ecx, dword [esi + 0x84]
mov dword [esi + 0x8c], eax
mov eax, dword [esi + 0x88]
or eax, ecx
mov ecx, dword [esi + 0x8c]
xor ecx, eax
mov eax, dword [esi + 0x9c]
or edx, ebx
xor edx, 0xffffffff
or edi, 0x663bd20
and edx, edi
or ecx, edx
add ecx, 0x1dc7ac48
and ecx, 0xba80e97b
imul edi, ecx, 0x62a07bfb
add edi, 0x9f6de27b
sub edi, 0xc66720c3
sub edi, 0x9f6de27b
mov ecx, 0xffffffff
xor ecx, 0x2383bcff
xor edx, edx
sub edx, 1
sub ecx, edx
sub edi, ecx
or edi, 0xddf90ad2
mov ecx, 0xffffffff
xor ecx, 0xf92cb390
add edi, ecx
add edi, 1
mov edx, 0xffffffff
xor edx, 0xb2c20fd8
mov ecx, edi
and ecx, edx
mov edx, edi
xor edx, 0xb2c20fd8
add edi, edx
sub edi, ecx
sub edi, 0xbf5b3c0e
mov edx, 0xffffffff
xor edx, 0xbb961083
mov ecx, edi
and ecx, edx
mov edx, edi
xor edx, 0xbb961083
add edi, edx
sub edi, ecx
or edi, 0xed2e12ff
mov ecx, 0x43790e31
mov edx, 0xbba01266
cmp edi, 0x8545b227
cmovae ecx, edx
mov dword [eax], ecx
jmp 0x1010048b
mov ecx, dword [esi + 0x94]
mov eax, 0xb8e140a0
mov dword [esi + 0x68], eax
mov dword [0x101d46c0], 1
push eax
mov eax, esp
mov edx, eax
mov dword [esi + 0x60], edx
sub esp, 8
mov edx, esp
and edx, 0xfffffff8
mov dword [esi + 0x54], edx
mov esp, edx
push eax
mov edi, esp
mov edx, edi
mov dword [esi + 0x3c], edx
sub esp, 0x10
mov edx, esp
mov dword [esi + 0x58], edx
mov dword [esi + 0x50], edx
push eax
mov edx, esp
mov dword [esi + 0x5c], edx
push eax
mov edx, esp
mov dword [esi + 0x64], edx
push eax
mov edx, esp
mov dword [esi + 0x40], edx
sub esp, 8
mov edx, esp
mov dword [esi + 0x44], edx
push eax
mov edx, esp
mov dword [esi + 0x48], edx
sub esp, 8
mov edx, esp
mov dword [esi + 0x4c], edx
mov dword [eax], ecx
call fcn.10100960
mov ecx, dword [esi + 0x50]
mov ebx, eax
mov eax, dword [esi + 0x54]
mov dword [eax + 4], edx
mov edx, dword [esi + 0x58]
mov dword [eax], ebx
mov dword [edi], 1
movsd xmm0, qword [0x101d1030]
movsd qword [edx + 5], xmm0
movsd xmm0, qword [0x101d102b]
movsd qword [edx], xmm0
mov edx, dword [eax]
mov edi, dword [eax + 4]
sub esp, 0xc
mov eax, esp
mov dword [eax + 8], edi
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.100e2590
mov ecx, dword [esi + 0x5c]
add esp, 0xc
mov edx, eax
mov eax, dword [esi + 0x60]
mov dword [ecx], edx
mov eax, dword [eax]
xor ecx, ecx
sub esp, 8
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.100e67e0
mov ecx, dword [esi + 0x64]
add esp, 8
mov edx, eax
mov eax, dword [esi + 0x68]
mov dword [ecx], edx
mov ecx, dword [ecx]
mov dword [esi + 0x6c], ecx
cmp eax, 0x1dc15b2d
je 0x100ff7db
jmp 0x10100490
mov ecx, dword [0x101d2d58]
imul ecx, dword [0x101d2d5c]
add ecx, 0xeac3813c
or ecx, 0x2dd98547
mov edx, 0xffffffff
xor edx, 0xe9b8def4
mov eax, ecx
xor eax, edx
and eax, ecx
mov edi, 0xffffffff
xor edi, 0x1922ac29
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x1922ac29
or eax, 0x1922ac29
imul eax, edx
add eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x60716569
mov edx, 0xffffffff
xor edx, 0x60716569
and eax, edx
sub eax, ecx
mov ecx, 0xd1173508
xor edx, edx
div ecx
mov ecx, eax
and ecx, 0x19acfa8d
xor ecx, 0xffffffff
and eax, 0x19acfa8d
xor eax, 0xffffffff
and ecx, eax
xor ecx, 0xffffffff
sub ecx, 0x3c5a893
mov eax, ecx
and eax, eax
xor eax, 0xffffffff
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x4645ef17
or eax, edx
mov edx, 0x4645ef17
and edx, 0x4645ef17
xor edx, 0xffffffff
and ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov edi, 0xffffffff
xor edi, 0xd6e8e6a3
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xd6e8e6a3
or eax, 0xd6e8e6a3
imul eax, edx
add eax, ecx
mov ecx, 0xc7fcf278
xor edx, edx
div ecx
mov ecx, eax
mov eax, 0xffffffff
xor eax, 0xd2e9bcbf
xor edx, edx
sub edx, 1
sub eax, edx
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
or eax, edx
and eax, 0xd1ff548b
xor eax, 0xffffffff
mov edx, 0xd1ff548b
and edx, 0xd1ff548b
xor edx, 0xffffffff
and ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x48d01809
mov edi, 0xffffffff
xor edi, 0x48d01809
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0x48d01809
or eax, 0x48d01809
imul eax, edx
add eax, ecx
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x8abfc07d
add ecx, eax
xor eax, eax
sub eax, ecx
or eax, 0xfc1cf6a2
imul eax, eax, 0x74e2950f
xor ecx, ecx
sub ecx, 0x7d0cbfa1
sub eax, ecx
mov ecx, eax
and ecx, 0x5f222750
xor ecx, 0xffffffff
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x5f222750
or eax, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
or ecx, eax
mov eax, ecx
or eax, eax
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xd42f9aa7
mov edi, 0xffffffff
xor edi, 0xd42f9aa7
and edx, edi
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
or ecx, 0xd42f9aa7
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
mov ecx, eax
xor ecx, 0xffffffff
xor eax, 0xffffffff
or ecx, eax
mov eax, 0xffffffff
xor eax, 0xc863a4bc
mov edx, 0xffffffff
xor edx, 0xc863a4bc
or eax, edx
and ecx, eax
xor ecx, 0xffffffff
mov eax, ecx
xor eax, 0xffffffff
and eax, 0x597c4b6c
mov edx, 0xffffffff
xor edx, 0x597c4b6c
and ecx, edx
or eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0xf20376
mov edi, 0xffffffff
xor edi, 0xf20376
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0xf20376
or eax, 0xf20376
imul eax, edx
add eax, ecx
sub eax, 0xba267f07
mov ecx, eax
and ecx, 0x503ba0d7
shl ecx, 1
add eax, 0x503ba0d7
sub eax, ecx
add eax, 0x36596365
sub eax, 0xc6c49b07
sub eax, 0x36596365
sub eax, 0xba27b5e3
mov ecx, eax
and ecx, 0xa3952954
xor ecx, 0xffffffff
add eax, 0xa3952954
add eax, 1
add eax, ecx
imul eax, eax, 0x60b2286c
mov ecx, 0x18e2bca1
xor edx, edx
div ecx
imul ecx, eax, 0xf8365783
sub ecx, 0x433cc2c
mov eax, ecx
xor eax, 0xffffffff
and eax, 0x50b6a85f
mov edx, 0xffffffff
xor edx, 0x50b6a85f
and ecx, edx
or eax, ecx
sub eax, 0x3f7018b2
xor eax, 0xb9e851b3
sub eax, 0xbf266771
sub eax, 0x70ca5768
sub eax, 0xcf11a3da
add eax, 0x70ca5768
mov ecx, eax
and ecx, 0xc2e225f1
shl ecx, 1
add eax, 0xc2e225f1
sub eax, ecx
imul ecx, eax, 0x9d8bd564
sub ecx, 0x365c0c70
mov eax, ecx
and eax, 0x1164d13b
or ecx, 0x1164d13b
add eax, ecx
and eax, 0xb769a56e
mov edi, 0xffffffff
xor edi, 0xa58bd20d
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xa58bd20d
or eax, 0xa58bd20d
imul eax, edx
add eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x7be8ca18
mov edi, 0xffffffff
xor edi, 0x7be8ca18
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0x7be8ca18
or eax, 0x7be8ca18
imul eax, edx
add eax, ecx
mov ecx, 0xa595530b
xor edx, edx
div ecx
sub eax, 0x4b088db7
imul eax, eax, 0x60be0afd
mov ecx, 0x960ffc41
xor edx, edx
div ecx
xor eax, 0x9f50b2a7
mov ecx, 0xede7044b
xor edx, edx
div ecx
mov ecx, 0x99a9b2dd
xor edx, edx
div ecx
mov ecx, eax
and ecx, 0x45a206b
xor ecx, 0xffffffff
and eax, 0x45a206b
xor eax, 0xffffffff
xor ecx, 0xffffffff
xor eax, 0xffffffff
or ecx, eax
mov edi, 0xffffffff
xor edi, 0x50fdc4ca
mov edx, ecx
and edx, edi
mov eax, ecx
or eax, edi
xor eax, 0xffffffff
imul eax, edx
mov edx, ecx
and edx, 0x50fdc4ca
or ecx, 0x50fdc4ca
imul ecx, edx
add ecx, eax
sub ecx, 0x398a8089
mov edx, 0xffffffff
xor edx, 0x38832851
mov eax, ecx
xor eax, edx
and eax, ecx
xor eax, 0xd2c19a12
and eax, 0x4f301a1b
and eax, 0xb8e8d2bd
imul eax, eax, 0x9bf962f8
imul eax, eax, 0xd415e8c2
and eax, 0x1d73c86a
mov edx, eax
xor edx, 0xffffffff
and edx, 0x10a260cf
mov edi, 0xffffffff
xor edi, 0x10a260cf
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0x10a260cf
or eax, 0x10a260cf
imul eax, edx
add eax, ecx
mov ecx, eax
xor ecx, 0x2794b86c
mov edx, 0xffffffff
xor edx, 0x2794b86c
and eax, edx
shl eax, 1
sub eax, ecx
and eax, 0xb0f6adda
sub eax, 0xbd9b7114
sub eax, 0x5e75c76a
add eax, 0xbd9b7114
mov ecx, 0xeb85a5f
xor edx, edx
div ecx
mov ecx, 0x88092d47
xor edx, edx
div ecx
mov edi, eax
mov eax, dword [esi + 0x9c]
add edi, 0xba7aa680
add edi, 0xf2080fe
xor ecx, ecx
sub ecx, 0xafd47fb1
add edi, ecx
mov ecx, 0xa127d43f
mov edx, 0xa5613535
cmp edi, 0x716d603e
cmove ecx, edx
mov dword [eax], ecx
jmp 0x1010048b
mov ecx, dword [esi + 0x44]
mov eax, dword [esi + 0x40]
xor ebx, ebx
mov edi, ebx
mov edx, dword [0x101d103f]
mov dword [ecx + 3], edx
mov edx, dword [0x101d103c]
mov dword [ecx], edx
mov edx, dword [eax]
sub esp, 0xc
mov eax, esp
mov dword [eax + 8], ebx
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.100e2590
add esp, 0xc
mov ecx, eax
mov eax, dword [esi + 0x48]
mov dword [eax], ecx
call dword [eax]
mov eax, dword [esi + 0x9c]
mov ecx, 0xf43af5f2
mov edx, 0xa127d43f
cmp edi, 0xb414455d
cmovae ecx, edx
mov dword [eax], ecx
jmp 0x1010048b
mov eax, dword [esi + 0x9c]
mov dword [eax], 0x8ef32f6b
jmp 0x1010048b
mov eax, dword [esi + 0x9c]
mov ecx, dword [esi + 0x3c]
mov dword [ecx], 0
mov dword [eax], 0xa741d43f
jmp 0x1010048b
mov eax, dword [0x101d2d70]
xor eax, dword [0x101d2d74]
mov ecx, 0xffffffff
xor ecx, 0xf292404
add eax, ecx
add eax, 1
mov ecx, 0xfe020d06
xor edx, edx
div ecx
sub eax, 0xdcd6aaf7
imul eax, eax, 0xc8f96925
mov edi, 0xffffffff
xor edi, 0xff9b0c6d
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xff9b0c6d
or eax, 0xff9b0c6d
imul eax, edx
add eax, ecx
or eax, 0xecf741f6
mov ecx, 0x8232a5ab
xor edx, edx
div ecx
mov ecx, eax
or ecx, 0xb3c4f377
mov eax, ecx
and eax, 0x120bfe26
or ecx, 0x120bfe26
add eax, ecx
sub eax, 0xdea3f7ce
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x8723a17f
mov edx, 0xffffffff
xor edx, 0x8723a17f
and eax, edx
or ecx, eax
mov eax, ecx
xor eax, 0x9a343ba1
mov edx, 0xffffffff
xor edx, 0x9a343ba1
and ecx, edx
shl ecx, 1
sub ecx, eax
mov eax, ecx
and eax, 0xe0275f58
xor ecx, 0xe0275f58
or eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xdcf63793
add eax, ecx
add eax, 1
mov ecx, eax
and ecx, 0x521f1ea0
shl ecx, 1
xor eax, 0x521f1ea0
add eax, ecx
mov ecx, 0x52c093fd
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
and eax, 0xd2c7160b
xor eax, 0xffffffff
and ecx, 0xd2c7160b
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x2d76e685
xor edx, edx
div ecx
mov ecx, eax
and ecx, 0xc95eae6e
or ecx, 0xb40baf30
and ecx, 0xcaf1e27e
mov eax, ecx
add eax, 1
xor ecx, 0xffffffff
or ecx, 0xb95e97fd
add ecx, eax
mov edx, ecx
xor edx, 0xffffffff
mov ebx, 0xffffffff
xor ebx, 0x1478ef3a
mov edi, 0xffffffff
xor edi, 0x1f4970af
mov eax, edx
and eax, 0x1f4970af
mov dword [esi + 0x2c], eax
and ecx, edi
mov eax, ebx
and eax, 0x1f4970af
mov dword [esi + 0x30], eax
mov eax, edi
and eax, 0x1478ef3a
mov dword [esi + 0x34], eax
mov eax, dword [esi + 0x2c]
or eax, ecx
mov ecx, dword [esi + 0x30]
mov dword [esi + 0x38], eax
mov eax, dword [esi + 0x34]
or ecx, eax
mov eax, dword [esi + 0x38]
xor eax, ecx
mov ecx, dword [esi + 0x3c]
or edx, ebx
xor edx, 0xffffffff
or edi, 0x1f4970af
and edx, edi
or eax, edx
xor eax, 0xb34ddd51
xor eax, 0xfdf42b9b
or eax, 0x6154bea7
mov edi, 0x80987873
xor edx, edx
div edi
mov edx, 0xffffffff
xor edx, 0xf04f1661
xor edi, edi
sub edi, 1
sub edx, edi
sub eax, edx
add eax, 0xd819524e
sub eax, 0x23d87125
add eax, 0xea0cd6ac
add eax, 0xf0868630
sub eax, 0xea0cd6ac
mov edi, 0xa95129d6
xor edx, edx
div edi
mov edx, eax
xor edx, 0x88b315d8
xor eax, eax
sub eax, 0xc0000c1d
add edx, eax
xor edx, 0x111c6e18
mov edi, edx
xor edi, 0xffffffff
and edi, 0x935fa00e
mov ebx, 0xffffffff
xor ebx, 0x935fa00e
mov eax, edx
and eax, ebx
imul eax, edi
mov edi, edx
and edi, 0x935fa00e
or edx, 0x935fa00e
imul edx, edi
add edx, eax
or edx, 0xa8c550e7
mov eax, edx
and eax, 0xddc9d8c3
xor edx, 0xddc9d8c3
or eax, edx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x59e73f3a
mov edi, 0xffffffff
xor edi, 0x59e73f3a
and eax, edi
sub eax, edx
mov edi, 0xffffffff
xor edi, 0xf91cc6e7
mov edx, eax
and edx, edi
mov edi, eax
xor edi, 0xf91cc6e7
add eax, edi
sub eax, edx
imul eax, eax, 0xd94aa1df
mov edx, eax
and edx, 0x4a22b48
shl edx, 1
add eax, 0x4a22b48
sub eax, edx
mov edx, eax
and edx, 0x18039c6e
xor edx, 0xffffffff
add eax, 0x18039c6e
add eax, 1
add eax, edx
or eax, 0xbd8fb7e4
mov edx, eax
or edx, edx
xor edx, 0xffffffff
mov edi, 0xffffffff
xor edi, 0x96dc0b53
mov ebx, 0xffffffff
xor ebx, 0x96dc0b53
and edi, ebx
or edx, edi
xor edx, 0xffffffff
or eax, 0x96dc0b53
xor eax, 0xffffffff
or edx, eax
xor edx, 0xffffffff
xor edx, 0xffffffff
mov edi, 0xffffffff
xor edi, 0xf246889b
mov eax, 0xffffffff
xor eax, 0x4535958b
or edx, edi
or eax, 0x4535958b
xor edx, 0xffffffff
and edx, eax
mov eax, edx
or eax, 0x50e84495
xor eax, 0xffffffff
xor edx, 0xffffffff
mov edi, 0xffffffff
xor edi, 0x50e84495
and edx, edi
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
mov edi, eax
xor edi, 0xffffffff
and edi, 0xc05a1909
mov ebx, 0xffffffff
xor ebx, 0xc05a1909
mov edx, eax
and edx, ebx
imul edx, edi
mov edi, eax
and edi, 0xc05a1909
or eax, 0xc05a1909
imul eax, edi
add eax, edx
imul eax, eax, 0x674e2d86
or eax, 0xfb5ce4c6
mov edi, 0xa3359367
xor edx, edx
div edi
xor eax, 0xf3789e36
mov edi, 0x1fedb7a8
xor edx, edx
div edi
xor eax, 0xcd4d5b29
add eax, 0xb5d74db4
mov ebx, eax
xor ebx, 0xffffffff
xor eax, 0xffffffff
and ebx, eax
mov eax, 0xffffffff
xor eax, 0x28803587
mov edx, 0xffffffff
xor edx, 0x28803587
and eax, edx
or ebx, eax
xor ebx, 0xffffffff
or ebx, 0xa28ee58
mov eax, ebx
xor eax, 0xffffffff
and eax, 0x242bfe7e
mov edi, 0xffffffff
xor edi, 0x242bfe7e
and ebx, edi
mov edx, 0xffffffff
xor edx, 0xd625117c
and edx, 0x242bfe7e
and edi, 0xd625117c
or eax, ebx
or edx, edi
xor eax, edx
mov ebx, 0xffffffff
xor ebx, 0xb97683c1
mov edi, eax
and edi, ebx
mov edx, eax
or edx, ebx
xor edx, 0xffffffff
imul edx, edi
mov edi, eax
and edi, 0xb97683c1
or eax, 0xb97683c1
imul eax, edi
add eax, edx
imul eax, eax, 0xedce482f
xor eax, 0x1a3b8e82
or eax, 0xa05b0bfe
mov edx, 0xffffffff
xor edx, 0x2412a19d
xor edi, edi
sub edi, 1
sub edx, edi
sub eax, edx
mov edx, eax
xor edx, 0x3b0e429
xor edx, 0xffffffff
and edx, 0x3b0e429
shl edx, 1
sub edx, 0x3b0e429
sub eax, edx
mov edx, eax
and edx, 0x29ebf214
shl edx, 1
xor eax, 0x29ebf214
add eax, edx
mov edx, eax
and edx, 0xac0ac36d
shl edx, 1
xor eax, 0xac0ac36d
add eax, edx
mov edi, 0xf180ac89
xor edx, edx
div edi
mov edi, 0x8f22c5da
xor edx, edx
div edi
mov edi, 0xf73e9cad
xor edx, edx
div edi
mov edi, eax
mov eax, dword [esi + 0x9c]
mov edx, edi
xor edx, 0x74b7b5fd
xor edx, 0xffffffff
and edx, 0x74b7b5fd
shl edx, 1
sub edx, 0x74b7b5fd
sub edi, edx
mov dword [ecx], 1
mov ecx, 0xf5d57f9
mov edx, 0xdc932861
cmp edi, 0x75ad3881
cmovbe ecx, edx
mov dword [eax], ecx
jmp 0x1010048b
mov eax, dword [esi + 0x9c]
mov dword [eax], 0xa741d43f
jmp 0x1010048b
mov eax, dword [esi + 0x4c]
mov ecx, dword [0x101d1046]
mov dword [eax], ecx
mov cx, word [0x101d104a]
mov word [eax + 4], cx
sub esp, 8
mov dword [esp], eax
mov dword [esp + 4], 5
call fcn.1005bee0
mov eax, dword [esi + 0x3c]
add esp, 8
mov eax, dword [eax]
mov dword [esi + 0x28], eax
mov ecx, dword [esi + 0xa8]
xor ecx, ebp
call fcn.1017ab8f
mov eax, dword [esi + 0x28]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, dword [esi + 0x94]
mov dword [0x101d46c0], 1
push eax
mov eax, esp
mov edx, eax
mov dword [esi + 0x20], edx
sub esp, 8
mov edx, esp
and edx, 0xfffffff8
mov dword [esi + 0x14], edx
mov esp, edx
push eax
mov edi, esp
sub esp, 0x10
mov edx, esp
mov dword [esi + 0x18], edx
mov dword [esi + 0x10], edx
push eax
mov edx, esp
mov dword [esi + 0x1c], edx
push eax
mov edx, esp
mov dword [esi + 0x24], edx
push eax
sub esp, 8
push eax
sub esp, 8
mov dword [eax], ecx
call fcn.10100960
mov ecx, dword [esi + 0x10]
mov ebx, eax
mov eax, dword [esi + 0x14]
mov dword [eax + 4], edx
mov edx, dword [esi + 0x18]
mov dword [eax], ebx
mov dword [edi], 1
movsd xmm0, qword [0x101d1030]
movsd qword [edx + 5], xmm0
movsd xmm0, qword [0x101d102b]
movsd qword [edx], xmm0
mov edx, dword [eax]
mov edi, dword [eax + 4]
sub esp, 0xc
mov eax, esp
mov dword [eax + 8], edi
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.100e2590
mov ecx, dword [esi + 0x1c]
add esp, 0xc
mov edx, eax
mov eax, dword [esi + 0x20]
mov dword [ecx], edx
mov eax, dword [eax]
xor ecx, ecx
sub esp, 8
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.100e67e0
mov ecx, dword [esi + 0x24]
add esp, 8
mov edx, eax
mov eax, dword [esi + 0x9c]
mov dword [ecx], edx
mov dword [eax], 0xbba01266
jmp 0x1010048b
mov ecx, dword [esi + 0x44]
mov eax, dword [esi + 0x40]
mov edx, dword [0x101d103f]
mov dword [ecx + 3], edx
mov edx, dword [0x101d103c]
mov dword [ecx], edx
mov edx, dword [eax]
xor edi, edi
sub esp, 0xc
mov eax, esp
mov dword [eax + 8], edi
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.100e2590
add esp, 0xc
mov ecx, eax
mov eax, dword [esi + 0x48]
mov dword [eax], ecx
call dword [eax]
mov eax, dword [esi + 0x9c]
mov dword [eax], 0xa127d43f
jmp 0x1010048b
mov eax, dword [esi + 0x9c]
mov ecx, dword [esi + 0x3c]
mov dword [ecx], 1
mov dword [eax], 0xdcf008f5
jmp 0x100fef14
mov eax, dword [esi + 0x6c]
test eax, eax
je 0x101004c2
jmp 0x101004a0
mov eax, dword [esi + 0x6c]
sub eax, 1
je 0x101004f8
jmp 0x101004b1
mov eax, dword [esi + 0x6c]
sub eax, 2
je 0x10100512
jmp 0x1010030d
mov edi, dword [esi + 0x40]
mov ecx, dword [esi + 0x60]
mov eax, dword [esi + 0x5c]
mov eax, dword [eax]
mov ecx, dword [ecx]
sub esp, 4
mov dword [esp], ecx
call eax
mov ecx, eax
mov eax, dword [esi + 0x9c]
mov dword [edi], ecx
mov ecx, 0x8ef32f6b
mov edx, 0x25b387c
cmp dword [edi], 0
cmovne ecx, edx
mov dword [eax], ecx
jmp 0x1010048b
mov eax, dword [esi + 0x9c]
mov ecx, dword [esi + 0x3c]
mov dword [ecx], 0
mov dword [eax], 0xa741d43f
jmp 0x1010048b
mov eax, dword [0x101d2d68]
mov edx, dword [0x101d2d6c]
mov ecx, eax
and ecx, edx
or eax, edx
add ecx, eax
sub ecx, 0x439eddaa
sub ecx, 0x5d8630cd
mov eax, ecx
and eax, 0xa112d618
or ecx, 0xa112d618
add eax, ecx
mov ecx, 0xd08d097b
xor edx, edx
div ecx
mov ecx, 0x73174b1c
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xc9ccb61a
sub ecx, 0x23c81da
add ecx, 0xb890b3b9
add ecx, 0x23c81da
and ecx, 0x6b2f21af
sub ecx, 0x43d2ef9e
mov eax, ecx
and eax, 0x8a97b6ff
or ecx, 0x8a97b6ff
add eax, ecx
and eax, 0xca9d5651
mov ecx, eax
xor ecx, 0x681d61c5
mov edx, 0xffffffff
xor edx, 0x681d61c5
and eax, edx
shl eax, 1
sub eax, ecx
mov ecx, 0x64d32d0
xor edx, edx
div ecx
imul eax, eax, 0x99db319e
mov ecx, 0xbd112624
xor edx, edx
div ecx
mov ecx, eax
and ecx, 0xad1653f
xor ecx, 0xffffffff
add eax, 0xad1653f
add eax, 1
add eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x8644498f
mov ecx, 0xffffffff
xor ecx, 0xb72bf8af
or eax, edx
or ecx, 0xb72bf8af
xor eax, 0xffffffff
and eax, ecx
mov ecx, eax
and ecx, 0x1b37f6ab
xor ecx, 0xffffffff
add eax, 0x1b37f6ab
add eax, 1
add eax, ecx
or eax, eax
xor eax, 0xffffffff
mov ecx, 0xe7331f1d
or ecx, 0xe7331f1d
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov edx, 0xffffffff
xor edx, 0xae7e18f8
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0xae7e18f8
add eax, edx
sub eax, ecx
mov ecx, eax
and ecx, 0x8251c378
shl ecx, 1
add eax, 0x8251c378
sub eax, ecx
mov ecx, eax
xor ecx, 0xe7b96e9b
xor ecx, 0xffffffff
or eax, 0xe7b96e9b
and eax, ecx
add eax, 0xa1deeda2
add eax, 0x36bbd49d
add eax, 0xa951ce87
sub eax, 0x36bbd49d
xor eax, 0x1b290c83
xor ecx, ecx
sub ecx, 0xacae7f58
sub eax, ecx
mov ecx, 0xd6ee2ca4
xor edx, edx
div ecx
and eax, 0xd451375b
add eax, 0x9e36fb20
mov edx, eax
xor edx, 0xffffffff
and edx, 0x46329f3a
mov edi, 0xffffffff
xor edi, 0x46329f3a
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0x46329f3a
or eax, 0x46329f3a
imul eax, edx
add eax, ecx
mov ecx, eax
and ecx, 0xf7cfff84
shl ecx, 1
add eax, 0xf7cfff84
sub eax, ecx
mov ecx, 0x7eb20de3
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0x90caa589
mov edx, 0xffffffff
xor edx, 0x90caa589
and eax, edx
shl eax, 1
sub eax, ecx
xor eax, 0x8d45c7fb
imul eax, eax, 0xae9fcdce
imul ecx, eax, 0x6718b690
mov eax, ecx
and eax, 0xad03efed
shl eax, 1
add ecx, 0xad03efed
sub ecx, eax
add ecx, 0x1b50b4df
xor ecx, 0xb3a6bc94
mov eax, ecx
or eax, eax
xor eax, 0xffffffff
mov edx, 0x7423c42c
or edx, 0x7423c42c
xor edx, 0xffffffff
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x7423c42c
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov edi, 0xffffffff
xor edi, 0x889311da
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x889311da
or eax, 0x889311da
imul eax, edx
add eax, ecx
mov ecx, 0xfb38c1fd
xor edx, edx
div ecx
imul ecx, eax, 0xd72577e9
add ecx, 0x9ac80fdc
add ecx, 0x7ca8aab6
add ecx, 0xdb5aa6dc
sub ecx, 0x7ca8aab6
mov eax, 0xffffffff
xor eax, 0x8c7c3224
xor edx, edx
sub edx, 1
sub eax, edx
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov dword [esi + 4], eax
mov edi, 0xffffffff
xor edi, 0xad242168
mov edx, 0xffffffff
xor edx, 0x185f6e83
and eax, 0x185f6e83
mov dword [esi], eax
and ecx, edx
mov ebx, edi
and ebx, 0x185f6e83
mov eax, edx
and eax, 0xad242168
mov dword [esi + 8], eax
mov eax, dword [esi]
or eax, ecx
mov ecx, dword [esi + 4]
mov dword [esi + 0xc], eax
mov eax, dword [esi + 8]
or ebx, eax
mov eax, dword [esi + 0xc]
xor eax, ebx
or ecx, edi
xor ecx, 0xffffffff
or edx, 0x185f6e83
and ecx, edx
or eax, ecx
mov ecx, 0xd2b9288e
xor edx, edx
div ecx
imul eax, eax, 0xcfc4f406
add eax, 0x7bac6920
mov ecx, 0xbb7ae29
xor edx, edx
div ecx
sub eax, 0x7119ea68
or eax, 0x19052ba4
imul eax, eax, 0xba78d6fd
mov ecx, 0x5d2ba73
xor edx, edx
div ecx
and eax, 0x2c8d3292
mov edi, 0xffffffff
xor edi, 0x9162367d
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x9162367d
or eax, 0x9162367d
imul eax, edx
add eax, ecx
sub eax, 0x8203de11
xor eax, 0x875be728
mov ecx, 0x9567b7c7
xor edx, edx
div ecx
sub eax, 0xc48f15fb
imul ecx, eax, 0xefee6abc
mov eax, ecx
or eax, eax
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xb1b46986
mov edi, 0xffffffff
xor edi, 0xb1b46986
and edx, edi
or eax, edx
xor eax, 0xffffffff
or ecx, 0xb1b46986
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0x15222ebf
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
xor eax, 0xffffffff
and eax, 0x2e7396e2
mov edx, 0xffffffff
xor edx, 0x2e7396e2
and ecx, edx
or eax, ecx
xor eax, 0xd9e1cf17
mov ecx, 0xf6bb3425
xor edx, edx
div ecx
mov ecx, eax
mov eax, dword [esi + 0x9c]
sub ecx, 0x70bd11ab
imul edi, ecx, 0xbefeb154
mov ecx, edi
xor ecx, 0xffffffff
and ecx, 0xa8d7c1d2
mov edx, 0xffffffff
xor edx, 0xa8d7c1d2
and edi, edx
sub edi, ecx
mov ecx, 0xdcf008f5
mov edx, 0xf5d57f9
cmp edi, 0x2680c86f
cmovb ecx, edx
mov dword [eax], ecx
jmp 0x1010048b