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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x210
mov esi, esp
mov eax, dword [ebp + 0x10]
mov dword [esi + 0x1e0], eax
mov eax, dword [ebp + 0xc]
mov dword [esi + 0x1e4], eax
mov eax, dword [ebp + 8]
mov dword [esi + 0x1e8], eax
mov eax, dword [0x101e76e8]
xor eax, ebp
mov dword [esi + 0x208], eax
mov edi, dword [0x101e4bc8]
and edi, dword [0x101e4bcc]
or edi, 0xfa081fd9
mov eax, edi
xor eax, 0xffffffff
and eax, 0xd0ac67ec
mov edx, 0xffffffff
xor edx, 0xd0ac67ec
and edi, edx
mov ecx, 0xffffffff
xor ecx, 0x3b81ffb9
and ecx, 0xd0ac67ec
and edx, 0x3b81ffb9
or eax, edi
or ecx, edx
xor eax, ecx
add eax, 0x1c11929f
sub eax, 0x1a49ad57
sub eax, 0x1c11929f
or eax, 0xb6f09c22
mov ecx, 0xf16d51da
xor edx, edx
div ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x9c8b6ac8
mov edi, 0xffffffff
xor edi, 0x9c8b6ac8
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0x9c8b6ac8
or eax, 0x9c8b6ac8
imul eax, edx
add eax, ecx
add eax, 0x3297a0a6
mov edx, eax
xor edx, 0xffffffff
and edx, 0x715a58f8
mov edi, 0xffffffff
xor edi, 0x715a58f8
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0x715a58f8
or eax, 0x715a58f8
imul eax, edx
add eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x2e27e2d3
mov edi, eax
xor edi, ecx
and edi, eax
mov eax, edi
xor eax, 0xffffffff
and eax, 0x18b848ea
mov edx, 0xffffffff
xor edx, 0x18b848ea
and edi, edx
mov ecx, 0xffffffff
xor ecx, 0x21d1efe1
and ecx, 0x18b848ea
and edx, 0x21d1efe1
or eax, edi
or ecx, edx
xor eax, ecx
mov ecx, 0xc037f9a8
xor edx, edx
div ecx
mov ecx, 0xdaf77167
xor edx, edx
div ecx
add eax, 0x4c7e51b2
add eax, 0xca76d9ae
sub eax, 0x4c7e51b2
mov ecx, 0x215a5eeb
xor edx, edx
div ecx
sub eax, 0x2fac7989
xor ecx, ecx
sub ecx, 0x44258cf5
add eax, ecx
sub eax, 0xbcc3586f
mov ecx, eax
xor ecx, 0x89d66a8b
xor ecx, 0xffffffff
or eax, 0x89d66a8b
and eax, ecx
imul eax, eax, 0x67f879ae
mov ecx, eax
and ecx, 0xa8b1603a
shl ecx, 1
xor eax, 0xa8b1603a
add eax, ecx
sub eax, 0x56896f54
mov ecx, eax
xor ecx, 0xffffffff
xor eax, 0xffffffff
and ecx, eax
mov eax, 0xe1fe7d04
or eax, 0xe1fe7d04
xor eax, 0xffffffff
xor ecx, 0xffffffff
xor eax, 0xffffffff
and ecx, eax
mov eax, ecx
add eax, 1
xor ecx, 0xffffffff
or ecx, 0xe061f191
add ecx, eax
sub ecx, 0xc6483057
add ecx, 0x40718e01
add ecx, 0xc6483057
sub ecx, 0xeccd597b
sub ecx, 0x21e0d6dd
add ecx, 0xeccd597b
mov eax, ecx
and eax, eax
xor eax, 0xffffffff
and eax, 0x229bf09b
xor eax, 0xffffffff
mov edx, 0x229bf09b
and edx, 0x229bf09b
xor edx, 0xffffffff
and ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, eax
and ecx, 0x4db8975d
xor ecx, 0xffffffff
and eax, 0x4db8975d
xor eax, 0xffffffff
and ecx, eax
xor ecx, 0xffffffff
mov eax, ecx
and eax, 0x69a8fb12
or ecx, 0x69a8fb12
add eax, ecx
mov ecx, 0x445ec689
xor edx, edx
div ecx
and eax, 0x4fc133a6
mov ecx, 0xd3b884d3
xor edx, edx
div ecx
mov ecx, 0xffffffff
xor ecx, 0xe3fd996e
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
or eax, 0x2e7b0a77
and eax, 0xf0fc7254
mov ecx, 0x611aae45
xor edx, edx
div ecx
imul eax, eax, 0xc7308126
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0xe7ff7154
add eax, ecx
mov ecx, 0xa5713622
xor edx, edx
div ecx
and eax, 0x3e72f2da
mov ecx, eax
and ecx, 0x265dbad2
shl ecx, 1
add eax, 0x265dbad2
sub eax, ecx
mov ecx, 0x4d8f6257
xor edx, edx
div ecx
imul eax, eax, 0xa4c047a4
or eax, 0xa2f3b006
and eax, 0x5eb604b7
xor eax, 0x17e80f45
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x6b209764
mov ecx, 0xffffffff
xor ecx, 0x38564f8e
or eax, edx
or ecx, 0x38564f8e
xor eax, 0xffffffff
and eax, ecx
mov ecx, 0x62cd36ed
xor edx, edx
div ecx
xor ecx, ecx
sub ecx, 0x4989feae
add eax, ecx
imul eax, eax, 0x251cb898
mov ecx, eax
and ecx, 0x97479378
shl ecx, 1
add eax, 0x97479378
sub eax, ecx
sub eax, 0xafcd197d
mov ecx, 0x1a181176
xor edx, edx
div ecx
imul eax, eax, 0x69c4af1f
mov edi, eax
xor edi, 0xffffffff
mov dword [esi + 0x1f4], edi
mov edx, 0xffffffff
xor edx, 0x7e58330d
mov ecx, 0xffffffff
xor ecx, 0x10b5b853
and edi, 0x10b5b853
and eax, ecx
mov dword [esi + 0x1ec], eax
mov ebx, edx
and ebx, 0x10b5b853
mov eax, ecx
and eax, 0x7e58330d
mov dword [esi + 0x1f0], eax
mov eax, dword [esi + 0x1ec]
or edi, eax
mov eax, dword [esi + 0x1f0]
or ebx, eax
mov eax, dword [esi + 0x1f4]
xor edi, ebx
or eax, edx
xor eax, 0xffffffff
or ecx, 0x10b5b853
and eax, ecx
or edi, eax
mov eax, edi
xor eax, 0xffffffff
and eax, 0x55f1113a
mov edx, 0xffffffff
xor edx, 0x55f1113a
and edi, edx
mov ecx, 0xffffffff
xor ecx, 0x80a22aae
and ecx, 0x55f1113a
and edx, 0x80a22aae
or eax, edi
or ecx, edx
xor eax, ecx
sub eax, 0xaa402c71
mov ecx, eax
xor ecx, 0xc6281160
xor ecx, 0xffffffff
and ecx, 0xc6281160
shl ecx, 1
sub ecx, 0xc6281160
sub eax, ecx
mov edi, 0xffffffff
xor edi, 0x2c179e47
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x2c179e47
or eax, 0x2c179e47
imul eax, edx
add eax, ecx
sub eax, 0xf253979
mov dword [esi + 0x204], 0x3f73f725
lea ecx, [esi + 0x204]
mov dword [esi + 0x200], ecx
add eax, 0x5c923bb6
mov dword [esi + 0x1f8], eax
mov eax, dword [esi + 0x200]
mov dword [esi + 0x1fc], eax
mov eax, dword [esi + 0x204]
mov dword [esi + 0x1dc], eax
sub eax, 0x8260d21a
je 0x10042bdc
jmp 0x1003bcc4
mov eax, dword [esi + 0x1dc]
sub eax, 0x82a71baf
je 0x10042bcb
jmp 0x1003bcda
mov eax, dword [esi + 0x1dc]
sub eax, 0x82c1fce8
je 0x10044c75
jmp 0x1003bcf0
mov eax, dword [esi + 0x1dc]
sub eax, 0x858c82b8
je 0x1003d3a7
jmp 0x1003bd06
mov eax, dword [esi + 0x1dc]
sub eax, 0x86517ade
je 0x10042bba
jmp 0x1003bd1c
mov eax, dword [esi + 0x1dc]
sub eax, 0x879a030e
je 0x1003dd51
jmp 0x1003bd32
mov eax, dword [esi + 0x1dc]
sub eax, 0x9031c8ed
je 0x1003c5eb
jmp 0x1003bd48
mov eax, dword [esi + 0x1dc]
sub eax, 0x903e4aba
je 0x10044dad
jmp 0x1003bd5e
mov eax, dword [esi + 0x1dc]
sub eax, 0x92aa3587
je 0x10042327
jmp 0x1003bd74
mov eax, dword [esi + 0x1dc]
sub eax, 0x92ec3960
je 0x1003cb2c
jmp 0x1003bd8a
mov eax, dword [esi + 0x1dc]
sub eax, 0x942cafbe
je 0x10044d20
jmp 0x1003bda0
mov eax, dword [esi + 0x1dc]
sub eax, 0x961425f1
je 0x1003c4c1
jmp 0x1003bdb6
mov eax, dword [esi + 0x1dc]
sub eax, 0x97d8c501
je 0x10044d31
jmp 0x1003bdcc
mov eax, dword [esi + 0x1dc]
sub eax, 0x9a7b1c94
je 0x10044d6e
jmp 0x1003bde2
mov eax, dword [esi + 0x1dc]
sub eax, 0xa067052c
je 0x1003e54f
jmp 0x1003bdf8
mov eax, dword [esi + 0x1dc]
sub eax, 0xa1116b56
je 0x1003c679
jmp 0x1003be0e
mov eax, dword [esi + 0x1dc]
sub eax, 0xa7f163ff
je 0x1003cb3d
jmp 0x1003be24
mov eax, dword [esi + 0x1dc]
sub eax, 0xa8d23be2
je 0x10043de2
jmp 0x1003be3a
mov eax, dword [esi + 0x1dc]
sub eax, 0xa9050974
je 0x10043dd1
jmp 0x1003be50
mov eax, dword [esi + 0x1dc]
sub eax, 0xaadaf448
je 0x1003cac7
jmp 0x1003be66
mov eax, dword [esi + 0x1dc]
sub eax, 0xab9be60e
je 0x10043e2b
jmp 0x1003be7c
mov eax, dword [esi + 0x1dc]
sub eax, 0xac1468e4
je 0x1003fdd8
jmp 0x1003be92
mov eax, dword [esi + 0x1dc]
sub eax, 0xb0654015
je 0x10042767
jmp 0x1003bea8
mov eax, dword [esi + 0x1dc]
sub eax, 0xb3e81679
je 0x100434fc
jmp 0x1003bebe
mov eax, dword [esi + 0x1dc]
sub eax, 0xb761a73f
je 0x1003e170
jmp 0x1003bed4
mov eax, dword [esi + 0x1dc]
sub eax, 0xb977d9a2
je 0x10041ab8
jmp 0x1003beea
mov eax, dword [esi + 0x1dc]
sub eax, 0xbae6343a
je 0x1003cfeb
jmp 0x1003bf00
mov eax, dword [esi + 0x1dc]
sub eax, 0xbc9a9f72
je 0x10044d8b
jmp 0x1003bf16
mov eax, dword [esi + 0x1dc]
sub eax, 0xc34dabee
je 0x10040f8e
jmp 0x1003bf2c
mov eax, dword [esi + 0x1dc]
sub eax, 0xca0b9731
je 0x1003ecb8
jmp 0x1003bf42
mov eax, dword [esi + 0x1dc]
sub eax, 0xca1ce46a
je 0x1003f4b1
jmp 0x1003bf58
mov eax, dword [esi + 0x1dc]
sub eax, 0xd0407539
je 0x1003fde9
jmp 0x1003bf6e
mov eax, dword [esi + 0x1dc]
sub eax, 0xd6d44ec0
je 0x10043dfe
jmp 0x1003bf84
mov eax, dword [esi + 0x1dc]
sub eax, 0xd97b594b
je 0x100427da
jmp 0x1003bf9a
mov eax, dword [esi + 0x1dc]
sub eax, 0xd9f5fa53
je 0x10044cd5
jmp 0x1003bfb0
mov eax, dword [esi + 0x1dc]
sub eax, 0xdc03cd1a
je 0x10044c5d
jmp 0x1003bfc6
mov eax, dword [esi + 0x1dc]
sub eax, 0xdf3a972a
je 0x10042756
jmp 0x1003bfdc
mov eax, dword [esi + 0x1dc]
sub eax, 0xe37c05d7
je 0x10043904
jmp 0x1003bff2
mov eax, dword [esi + 0x1dc]
sub eax, 0xe54d25bc
je 0x10044dbe
jmp 0x1003c008
mov eax, dword [esi + 0x1dc]
sub eax, 0xe7ef87d6
je 0x10042799
jmp 0x1003c01e
mov eax, dword [esi + 0x1dc]
sub eax, 0xe9257d42
je 0x1003cb7b
jmp 0x1003c034
mov eax, dword [esi + 0x1dc]
sub eax, 0xe9c57be4
je 0x1003ecc9
jmp 0x1003c04a
mov eax, dword [esi + 0x1dc]
sub eax, 0xea7203bc
je 0x10044e61
jmp 0x1003c060
mov eax, dword [esi + 0x1dc]
sub eax, 0xef15bcf0
je 0x100434e0
jmp 0x1003c076
mov eax, dword [esi + 0x1dc]
sub eax, 0xf1f17a49
je 0x10042b52
jmp 0x1003c08c
mov eax, dword [esi + 0x1dc]
sub eax, 0xfd68cd40
je 0x100441c8
jmp 0x1003c0a2
mov eax, dword [esi + 0x1dc]
sub eax, 0x34a563
je 0x1003dd1d
jmp 0x1003c0b8
mov eax, dword [esi + 0x1dc]
sub eax, 0x372d11
je 0x1003e560
jmp 0x1003c0ce
mov eax, dword [esi + 0x1dc]
sub eax, 0x14ce8cb
je 0x1004457b
jmp 0x1003c0e4
mov eax, dword [esi + 0x1dc]
sub eax, 0x213c0e6
je 0x10041f2c
jmp 0x1003c0fa
mov eax, dword [esi + 0x1dc]
sub eax, 0x23afed2
je 0x100445a9
jmp 0x1003c110
mov eax, dword [esi + 0x1dc]
sub eax, 0x3589e5c
je 0x1003d3f0
jmp 0x1003c126
mov eax, dword [esi + 0x1dc]
sub eax, 0x62c17b7
je 0x10040fba
jmp 0x1003c13c
mov eax, dword [esi + 0x1dc]
sub eax, 0xbcfd554
je 0x10044e50
jmp 0x1003c152
mov eax, dword [esi + 0x1dc]
sub eax, 0xbf4d838
je 0x10044e3f
jmp 0x1003c168
mov eax, dword [esi + 0x1dc]
sub eax, 0x10de8c9c
je 0x10044d9c
jmp 0x1003c17e
mov eax, dword [esi + 0x1dc]
sub eax, 0x11637a67
je 0x1003cb5c
jmp 0x1003c194
mov eax, dword [esi + 0x1dc]
sub eax, 0x127af711
je 0x10040679
jmp 0x1003c1aa
mov eax, dword [esi + 0x1dc]
sub eax, 0x135bab23
je 0x1003d384
jmp 0x1003c1c0
mov eax, dword [esi + 0x1dc]
sub eax, 0x156b2a6d
je 0x1003f4c2
jmp 0x1003c1d6
mov eax, dword [esi + 0x1dc]
sub eax, 0x17214ace
je 0x100427f9
jmp 0x1003c1ec
mov eax, dword [esi + 0x1dc]
sub eax, 0x17824847
je 0x10044e2e
jmp 0x1003c202
mov eax, dword [esi + 0x1dc]
sub eax, 0x1dbccd87
je 0x10043dc0
jmp 0x1003c218
mov eax, dword [esi + 0x1dc]
sub eax, 0x21692482
je 0x10041ac9
jmp 0x1003c22e
mov eax, dword [esi + 0x1dc]
sub eax, 0x27866e5f
je 0x10040aaa
mov ecx, dword [esi + 0x1e0]
mov edi, 0x65b56c60
push eax
mov eax, esp
mov dword [esi + 0x190], eax
sub esp, 8
mov eax, esp
and eax, 0xfffffff8
mov dword [esi + 0x1d4], eax
mov esp, eax
push eax
mov edx, esp
mov eax, edx
mov dword [esi + 0x194], eax
push eax
mov ebx, esp
mov eax, ebx
mov dword [esi + 0x1d0], eax
push eax
mov eax, esp
mov dword [esi + 0x1cc], eax
push eax
mov eax, esp
mov dword [esi + 0x198], eax
push eax
mov eax, esp
mov dword [esi + 0x19c], eax
push eax
mov eax, esp
mov dword [esi + 0x1a0], eax
push eax
mov eax, esp
mov dword [esi + 0x1a4], eax
push eax
mov eax, esp
mov dword [esi + 0x1a8], eax
push eax
mov eax, esp
mov dword [esi + 0x1ac], eax
push eax
mov eax, esp
mov dword [esi + 0x1b0], eax
push eax
mov eax, esp
mov dword [esi + 0x1b4], eax
push eax
mov eax, esp
mov dword [esi + 0x1b8], eax
push eax
mov eax, esp
mov dword [esi + 0x1bc], eax
push eax
mov eax, esp
mov dword [esi + 0x1c0], eax
push eax
mov eax, esp
mov dword [esi + 0x1c4], eax
push eax
mov eax, esp
mov dword [esi + 0x1c8], eax
mov eax, dword [esi + 0x1d4]
mov dword [eax + 4], ecx
mov ecx, dword [esi + 0x1e4]
mov dword [eax], ecx
mov ecx, dword [esi + 0x1cc]
mov eax, dword [esi + 0x1e8]
mov dword [edx], eax
mov eax, dword [esi + 0x1d0]
mov edx, dword [esi + 0x1d4]
mov edx, dword [edx]
mov dword [ebx], edx
mov edx, dword [esi + 0x1d4]
mov edx, dword [edx]
mov eax, dword [eax]
mov eax, dword [eax + 0x3c]
xor ebx, ebx
sub ebx, eax
mov eax, dword [esi + 0x1fc]
sub edx, ebx
mov dword [ecx], edx
mov ecx, dword [ecx]
add ecx, 0x18
add ecx, 0x60
mov dword [esi + 0x1d8], ecx
mov ecx, 0x9031c8ed
mov edx, 0x82c1fce8
cmp edi, 0xd9d1d6f
cmovb ecx, edx
mov dword [eax], ecx
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov dword [eax], 0x7bf2f72b
jmp 0x10044e6d
mov eax, dword [0x101e4bd8]
imul eax, dword [0x101e4bdc]
add eax, 0xafa12471
mov ecx, 0x8e07a57
xor edx, edx
div ecx
xor eax, 0xfd5a9faf
mov edi, eax
and edi, 0x8148883a
xor eax, 0x8148883a
or edi, eax
mov eax, edi
xor eax, 0xffffffff
and eax, 0x89a5a288
mov edx, 0xffffffff
xor edx, 0x89a5a288
and edi, edx
mov ecx, 0xffffffff
xor ecx, 0x3b1ebda8
and ecx, 0x89a5a288
and edx, 0x3b1ebda8
or eax, edi
or ecx, edx
xor eax, ecx
and eax, 0xb252dd49
mov ecx, eax
and ecx, 0x1577df40
or eax, 0x1577df40
add ecx, eax
sub ecx, 0xd6438907
mov eax, ecx
and eax, 0xd9122dd3
xor eax, 0xffffffff
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xd9122dd3
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
sub eax, 0x2e003ef7
mov ecx, eax
xor ecx, 0x369340bd
xor ecx, 0xffffffff
and ecx, 0x369340bd
shl ecx, 1
sub ecx, 0x369340bd
sub eax, ecx
mov ecx, 0xcd6e4085
xor edx, edx
div ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x4f9313f9
mov edi, 0xffffffff
xor edi, 0x4f9313f9
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0x4f9313f9
or eax, 0x4f9313f9
imul eax, edx
add eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xa760a7f0
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
mov ecx, 0x71a55ac3
xor edx, edx
div ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0xd0e11af7
mov edi, 0xffffffff
xor edi, 0xd0e11af7
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0xd0e11af7
or eax, 0xd0e11af7
imul eax, edx
add eax, ecx
and eax, 0x8c98c0a1
mov ecx, 0xca39a1df
xor edx, edx
div ecx
mov ecx, eax
sub ecx, 0x881bec56
sub ecx, 0xd5187707
add ecx, 0x881bec56
and ecx, 0xa0dca831
mov eax, ecx
xor eax, 0xffffffff
mov dword [esi + 0x184], eax
mov edi, 0xffffffff
xor edi, 0x2fd1ac33
mov edx, 0xffffffff
xor edx, 0x7eecdfc0
and eax, 0x7eecdfc0
mov dword [esi + 0x180], eax
and ecx, edx
mov ebx, edi
and ebx, 0x7eecdfc0
mov eax, edx
and eax, 0x2fd1ac33
mov dword [esi + 0x188], eax
mov eax, dword [esi + 0x180]
or eax, ecx
mov ecx, dword [esi + 0x184]
mov dword [esi + 0x18c], eax
mov eax, dword [esi + 0x188]
or ebx, eax
mov eax, dword [esi + 0x18c]
xor eax, ebx
or ecx, edi
xor ecx, 0xffffffff
or edx, 0x7eecdfc0
and ecx, edx
or eax, ecx
mov ecx, 0xca95b28
xor edx, edx
div ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0xf2246771
mov edi, 0xffffffff
xor edi, 0xf2246771
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0xf2246771
or eax, 0xf2246771
imul eax, edx
add eax, ecx
imul eax, eax, 0xe1de45b6
imul ecx, eax, 0x5af93267
xor ecx, 0x44889138
mov eax, 0xffffffff
xor eax, 0x8584c73c
add ecx, eax
add ecx, 1
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, 0x924c0b68
add eax, ecx
xor ecx, ecx
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
and eax, 0x1cabee80
mov edx, 0xffffffff
xor edx, 0x1cabee80
and ecx, edx
or eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0xd249ba32
mov edi, 0xffffffff
xor edi, 0xd249ba32
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0xd249ba32
or eax, 0xd249ba32
imul eax, edx
add eax, ecx
imul edi, eax, 0xadec80e5
mov eax, edi
xor eax, 0xffffffff
and eax, 0x9a439a5e
mov edx, 0xffffffff
xor edx, 0x9a439a5e
and edi, edx
mov ecx, 0xffffffff
xor ecx, 0x2b3ad881
and ecx, 0x9a439a5e
and edx, 0x2b3ad881
or eax, edi
or ecx, edx
xor eax, ecx
xor eax, 0x5b618f49
mov ecx, eax
xor ecx, 0x29f2c4cd
xor ecx, 0xffffffff
and ecx, 0x29f2c4cd
shl ecx, 1
sub ecx, 0x29f2c4cd
sub eax, ecx
mov ecx, eax
and ecx, 0xbde0378d
xor ecx, 0xffffffff
add eax, 0xbde0378d
add eax, 1
add eax, ecx
add eax, 0x82d6650e
mov ecx, 0xa3faa064
xor edx, edx
div ecx
mov ecx, eax
and ecx, 0x95063f1e
xor ecx, 0xffffffff
add eax, 0x95063f1e
add eax, 1
add eax, ecx
mov ecx, 0xd610e0e6
xor edx, edx
div ecx
xor eax, 0xf38961e3
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0xbb46214c
add ecx, eax
xor eax, eax
sub eax, ecx
or eax, 0x13607bd8
add eax, 0x426c54bf
mov ecx, eax
xor ecx, 0x307057f9
xor ecx, 0xffffffff
or eax, 0x307057f9
and eax, ecx
imul ecx, eax, 0xc00cfa61
mov edx, 0xffffffff
xor edx, 0x5cac3387
mov eax, ecx
xor eax, edx
and eax, ecx
add eax, 0x44f53c18
add eax, 0x4b74d3f8
sub eax, 0x44f53c18
sub eax, 0xca49ef7d
mov ecx, 0xbaeceaaf
xor edx, edx
div ecx
mov ecx, eax
and ecx, 0x5bc08830
xor ecx, 0xffffffff
add eax, 0x5bc08830
add eax, 1
add eax, ecx
mov ecx, 0xd4d5886b
xor edx, edx
div ecx
xor eax, 0xd01973c8
or eax, 0x92975119
sub eax, 0xfd345e29
imul eax, eax, 0x88178590
mov edi, 0xffffffff
xor edi, 0xeb9687b9
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xeb9687b9
or eax, 0xeb9687b9
imul eax, edx
add eax, ecx
mov ecx, 0x4cdb9d74
xor edx, edx
div ecx
mov edx, eax
mov eax, dword [esi + 0x1fc]
and edx, 0x92a28b3f
mov ecx, edx
or ecx, 0x2ca959ee
xor ecx, 0xffffffff
or edx, 0x2ca959ee
xor edx, 0xffffffff
xor ecx, 0xffffffff
xor edx, 0xffffffff
and ecx, edx
mov edi, ecx
and edi, 0xddc197d0
xor ecx, 0xddc197d0
or edi, ecx
mov ecx, 0xaadaf448
mov edx, 0xd9f5fa53
cmp edi, 0xb5d18221
cmovb ecx, edx
mov dword [eax], ecx
jmp 0x10044e6d
mov edx, dword [esi + 0x1b4]
mov eax, dword [esi + 0x1a0]
mov ebx, dword [esi + 0x1d4]
mov edi, 0x20ae
mov ecx, dword [ebx]
mov eax, dword [eax]
mov eax, dword [eax + 0x20]
add ecx, eax
mov eax, dword [esi + 0x1b0]
mov dword [eax], ecx
mov ecx, dword [esi + 0x1b8]
mov eax, dword [esi + 0x1a0]
mov ebx, dword [ebx]
mov eax, dword [eax]
mov eax, dword [eax + 0x24]
add ebx, eax
mov eax, dword [esi + 0x1fc]
mov dword [edx], ebx
mov dword [ecx], 0
mov ecx, 0xd9f5fa53
mov edx, 0x92ec3960
cmp edi, 0x9ce0519c
cmovne ecx, edx
mov dword [eax], ecx
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov dword [eax], 0xa7f163ff
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov ecx, dword [esi + 0x1b8]
mov ecx, dword [ecx]
mov dword [esi + 0x17c], ecx
mov dword [eax], 0x11637a67
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov ecx, dword [esi + 0x1a4]
mov ecx, dword [ecx]
mov dword [esi + 0x178], ecx
mov dword [eax], 0xe9257d42
jmp 0x10044e6d
mov edx, dword [0x101e4be8]
mov ecx, dword [0x101e4bec]
mov eax, edx
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
or ecx, ecx
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
mov ecx, eax
and ecx, 0x9da9ccd5
xor ecx, 0xffffffff
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x9da9ccd5
or eax, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
or ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov dword [esi + 0x16c], eax
mov edi, 0xffffffff
xor edi, 0x2db62044
mov edx, 0xffffffff
xor edx, 0xf491aba4
and eax, 0xf491aba4
mov dword [esi + 0x168], eax
and ecx, edx
mov ebx, edi
and ebx, 0xf491aba4
mov eax, edx
and eax, 0x2db62044
mov dword [esi + 0x170], eax
mov eax, dword [esi + 0x168]
or eax, ecx
mov ecx, dword [esi + 0x16c]
mov dword [esi + 0x174], eax
mov eax, dword [esi + 0x170]
or ebx, eax
mov eax, dword [esi + 0x174]
xor eax, ebx
or ecx, edi
xor ecx, 0xffffffff
or edx, 0xf491aba4
and ecx, edx
or eax, ecx
mov ecx, 0x9ef760b
xor edx, edx
div ecx
sub eax, 0x23d63d66
mov edi, 0xffffffff
xor edi, 0xe41f504d
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xe41f504d
or eax, 0xe41f504d
imul eax, edx
add eax, ecx
mov ecx, eax
xor ecx, 0x14fb687a
mov edx, 0xffffffff
xor edx, 0x14fb687a
and eax, edx
shl eax, 1
sub eax, ecx
mov ecx, 0x8f35c02f
xor edx, edx
div ecx
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x493b3c53
add ecx, eax
xor eax, eax
sub eax, ecx
imul eax, eax, 0xe70a2423
sub eax, 0x5437b4a0
add eax, 0xf07be708
imul eax, eax, 0x4868c236
mov edi, 0xffffffff
xor edi, 0x7649cca4
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x7649cca4
or eax, 0x7649cca4
imul eax, edx
add eax, ecx
imul eax, eax, 0xd7d6702f
mov ecx, 0xa45dc42c
xor edx, edx
div ecx
and eax, 0x9548eaed
or eax, 0x873407ab
mov edx, eax
xor edx, 0xffffffff
and edx, 0xf3144608
mov edi, 0xffffffff
xor edi, 0xf3144608
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0xf3144608
or eax, 0xf3144608
imul eax, edx
add eax, ecx
mov ecx, 0xf52d7978
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x864067b3
or ecx, edx
and eax, 0x864067b3
xor eax, 0xffffffff
xor ecx, 0xffffffff
xor eax, 0xffffffff
or ecx, eax
mov eax, ecx
xor eax, 0xc2a32a57
xor eax, 0xffffffff
or ecx, 0xc2a32a57
and ecx, eax
or ecx, ecx
xor ecx, 0xffffffff
mov eax, 0xffffffff
xor eax, 0x3c03ea69
mov edx, 0xffffffff
xor edx, 0x3c03ea69
and eax, edx
or ecx, eax
xor ecx, 0xffffffff
xor eax, eax
sub eax, 0x88d05f02
add ecx, eax
mov eax, ecx
xor eax, 0xffffffff
and eax, 0x6d0f9f68
mov edx, 0xffffffff
xor edx, 0x6d0f9f68
and ecx, edx
or eax, ecx
add eax, 0xe1debc82
and eax, 0x767801b0
mov ecx, 0x1761889e
xor edx, edx
div ecx
mov ecx, eax
sub ecx, 0x6495f67b
add ecx, 0x68799ef5
xor ecx, 0x3f580992
mov eax, ecx
or eax, 0xe7982972
xor eax, 0xffffffff
or ecx, 0xe7982972
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
or eax, eax
xor eax, 0xffffffff
mov ecx, 0xee3e4b0
or ecx, 0xee3e4b0
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
add eax, 0xaff80a89
imul eax, eax, 0x2089475f
mov ecx, eax
and ecx, 0x67a87e19
xor ecx, 0xffffffff
add eax, 0x67a87e19
add eax, 1
add eax, ecx
imul eax, eax, 0xb40a4aec
mov ecx, 0xd3e21926
xor edx, edx
div ecx
add eax, 0x524482fe
xor ecx, ecx
sub ecx, 0x2f8467b9
sub eax, ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0xa7299a9e
add eax, ecx
xor ecx, ecx
sub ecx, 0x60e1f3b8
sub eax, ecx
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x17f445ab
add ecx, eax
xor eax, eax
sub eax, ecx
mov ecx, 0xe63c75f9
xor edx, edx
div ecx
mov edi, eax
and edi, edi
xor edi, 0xffffffff
mov eax, 0xffffffff
xor eax, 0x1de97d71
mov ecx, 0xffffffff
xor ecx, 0x1de97d71
or eax, ecx
xor edi, 0xffffffff
xor eax, 0xffffffff
or edi, eax
and edi, 0x3081c993
mov eax, edi
xor eax, 0xffffffff
and eax, 0x674bfa6a
mov edx, 0xffffffff
xor edx, 0x674bfa6a
and edi, edx
mov ecx, 0xffffffff
xor ecx, 0x872188ef
and ecx, 0x674bfa6a
and edx, 0x872188ef
or eax, edi
or ecx, edx
xor eax, ecx
or eax, 0x4e68822c
mov edi, 0xffffffff
xor edi, 0x131f5b32
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x131f5b32
or eax, 0x131f5b32
imul eax, edx
add eax, ecx
mov ecx, eax
xor ecx, 0x517d42b3
mov edx, 0xffffffff
xor edx, 0x517d42b3
and eax, edx
shl eax, 1
sub eax, ecx
mov ecx, 0x701d614d
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
and eax, 0x34b394cb
xor eax, 0xffffffff
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x34b394cb
or ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
add eax, 0xc99db599
sub eax, 0x1a5a22e5
sub eax, 0xc99db599
sub eax, 0x683bd931
mov edx, eax
xor edx, 0xffffffff
and edx, 0x992f21e2
mov edi, 0xffffffff
xor edi, 0x992f21e2
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0x992f21e2
or eax, 0x992f21e2
imul eax, edx
add eax, ecx
mov ecx, 0xf558d342
xor edx, edx
div ecx
add eax, 0x9a08972
imul eax, eax, 0x21e012bc
xor ecx, ecx
sub ecx, 0x9cc42d47
sub eax, ecx
mov ecx, 0xba3b8bb0
xor edx, edx
div ecx
mov edi, eax
mov eax, dword [esi + 0x1fc]
mov ecx, edi
xor ecx, 0x910d769
xor ecx, 0xffffffff
or edi, 0x910d769
and edi, ecx
mov ecx, 0x942cafbe
mov edx, 0xbae6343a
cmp edi, 0xcec6a369
cmovb ecx, edx
mov dword [eax], ecx
jmp 0x10044e6d
mov ecx, dword [esi + 0x17c]
mov eax, dword [str.oy_1]
xor edx, edx
div dword [0x101e4bf4]
mov edx, eax
mov edi, 0xffffffff
xor edi, 0x87e6528
mov eax, edx
and eax, edi
mov edi, edx
xor edi, 0x87e6528
add edx, edi
sub edx, eax
and edx, 0x3269075f
add edx, 0x70484a2e
mov eax, edx
xor eax, 0xffffffff
mov edi, edx
xor edi, 0xffffffff
or eax, edi
and eax, 0xd2f09849
xor eax, 0xffffffff
mov edi, 0xffffffff
xor edi, 0xd2f09849
mov ebx, 0xffffffff
xor ebx, 0xd2f09849
or edi, ebx
and edx, edi
xor edx, 0xffffffff
xor eax, 0xffffffff
xor edx, 0xffffffff
or eax, edx
mov edi, 0xcb0a748c
xor edx, edx
div edi
mov edi, eax
xor edi, 0xffffffff
and edi, 0xeea33ac1
mov ebx, 0xffffffff
xor ebx, 0xeea33ac1
mov edx, eax
and edx, ebx
imul edx, edi
mov edi, eax
and edi, 0xeea33ac1
or eax, 0xeea33ac1
imul eax, edi
add eax, edx
and eax, 0xa70bc40b
or eax, 0x851793ec
add eax, 0x73a1cf3a
xor eax, 0xdbba8b8a
mov edi, 0x8dc9902a
xor edx, edx
div edi
imul eax, eax, 0x8dd4b106
mov edi, 0x2612b930
xor edx, edx
div edi
xor eax, 0xf7e9d442
sub eax, 0xa181563f
and eax, 0x4d26299f
imul eax, eax, 0x3b657363
sub eax, 0xc9a9231e
and eax, 0x848ab062
and eax, 0x13ca1b5f
mov edi, eax
xor edi, 0xffffffff
and edi, 0xe2e38dc3
mov ebx, 0xffffffff
xor ebx, 0xe2e38dc3
mov edx, eax
and edx, ebx
imul edx, edi
mov edi, eax
and edi, 0xe2e38dc3
or eax, 0xe2e38dc3
imul eax, edi
add eax, edx
imul eax, eax, 0xa5555ed3
add eax, 0x73f4ac61
and eax, 0xd20d88bb
mov edi, 0x96de566f
xor edx, edx
div edi
mov edi, 0x1843b208
xor edx, edx
div edi
mov edi, 0x2511337b
xor edx, edx
div edi
xor edx, edx
sub edx, 0x3bc46c9e
sub eax, edx
mov edi, 0x4f57fcdf
xor edx, edx
div edi
imul eax, eax, 0xe67eaad9
and eax, 0x2e698d01
mov edi, 0xff44f2ec
xor edx, edx
div edi
add eax, 0x997d0120
add eax, 0xc251d0f5
sub eax, 0x997d0120
mov edi, 0x46c1d6d7
xor edx, edx
div edi
mov ebx, eax
mov edx, ebx
xor edx, 0xffffffff
and edx, 0xa1ed5520
mov edi, 0xffffffff
xor edi, 0xa1ed5520
mov eax, ebx
and eax, edi
imul eax, edx
mov edx, ebx
and edx, 0xa1ed5520
or ebx, 0xa1ed5520
imul ebx, edx
add ebx, eax
and ebx, 0xf0a18c2f
mov eax, ebx
xor eax, 0xffffffff
and eax, 0x694f4e28
mov edi, 0xffffffff
xor edi, 0x694f4e28
and ebx, edi
mov edx, 0xffffffff
xor edx, 0x2c0ae062
and edx, 0x694f4e28
and edi, 0x2c0ae062
or eax, ebx
or edx, edi
xor eax, edx
xor eax, 0xffffffff
mov edi, 0xffffffff
xor edi, 0x4cba3c9c
mov edx, 0xffffffff
xor edx, 0x4db8d10f
or eax, edi
or edx, 0x4db8d10f
xor eax, 0xffffffff
and eax, edx
imul eax, eax, 0xcce057ee
add eax, 0x3f431dd
sub eax, 0x80be028f
sub eax, 0x3f431dd
sub eax, 0x95d7a38e
or eax, 0xad7f3625
imul edx, eax, 0xabca28b9
mov eax, edx
and eax, eax
xor eax, 0xffffffff
and eax, 0xc3778cd6
xor eax, 0xffffffff
mov edi, 0xffffffff
xor edi, 0xc3778cd6
mov ebx, 0xffffffff
xor ebx, 0xc3778cd6
or edi, ebx
xor edx, 0xffffffff
xor edi, 0xffffffff
or edx, edi
and eax, edx
xor eax, 0xffffffff
mov edi, 0x2cb467bb
xor edx, edx
div edi
sub eax, 0x73a37efb
sub eax, 0x44a69cb2
mov edx, eax
and edx, 0xc31f1922
xor eax, 0xc31f1922
or edx, eax
mov eax, edx
and eax, 0x19ba177e
xor eax, 0xffffffff
xor edx, 0xffffffff
mov edi, 0xffffffff
xor edi, 0x19ba177e
or edx, edi
xor eax, 0xffffffff
xor edx, 0xffffffff
or eax, edx
mov edi, 0xcedd54bf
xor edx, edx
div edi
sub eax, 0x51dc94c1
mov edx, eax
xor edx, 0xb7e5b327
xor edx, 0xffffffff
or eax, 0xb7e5b327
and eax, edx
mov edi, 0x77679606
xor edx, edx
div edi
sub eax, 0x89e5e1dc
sub eax, 0xc055eedc
add eax, 0x89e5e1dc
mov edi, 0xd0d1bf17
xor edx, edx
div edi
mov edx, dword [esi + 0x178]
imul edi, eax, 0x457c1c8f
and edi, edi
xor edi, 0xffffffff
mov eax, 0xffffffff
xor eax, 0x984ef85d
mov ebx, 0xffffffff
xor ebx, 0x984ef85d
or eax, ebx
and edi, eax
xor edi, 0xffffffff
xor edi, 0xffffffff
mov eax, 0xffffffff
xor eax, 0x2834f53
mov ebx, 0xffffffff
xor ebx, 0x5a78101c
or edi, eax
mov eax, dword [esi + 0x1fc]
or ebx, 0x5a78101c
xor edi, 0xffffffff
and edi, ebx
imul ebx, edi, 0x96850c42
mov edi, ebx
and edi, 0xf04f7694
xor ebx, 0xf04f7694
or edi, ebx
cmp ecx, edx
setb cl
mov byte [esi + 0x167], cl
mov ecx, 0x135bab23
mov edx, 0xbae6343a
cmp edi, 0x7889783e
cmovb ecx, edx
mov dword [eax], ecx
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov bl, byte [esi + 0x167]
mov ecx, 0x14ce8cb
mov edx, 0x858c82b8
test bl, 1
cmovne ecx, edx
mov dword [eax], ecx
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov ecx, dword [esi + 0x1ac]
mov ecx, dword [ecx]
mov dword [esi + 0x160], ecx
mov dword [eax], 0x576344fa
jmp 0x10044e6d
mov eax, dword [str.__NM]
xor edx, edx
div dword [0x101e4bfc]
mov ecx, 0xd3fd8cfc
xor edx, edx
div ecx
mov ecx, eax
mov edx, 0xffffffff
xor edx, 0x5de47289
mov eax, ecx
and eax, edx
mov edx, ecx
xor edx, 0x5de47289
add ecx, edx
sub ecx, eax
mov eax, ecx
and eax, 0xf6b52048
xor ecx, 0xf6b52048
or eax, ecx
mov ecx, 0x5ec7422f
xor edx, edx
div ecx
or eax, 0x689bb603
mov edx, eax
xor edx, 0xffffffff
and edx, 0xdbd08232
mov edi, 0xffffffff
xor edi, 0xdbd08232
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0xdbd08232
or eax, 0xdbd08232
imul eax, edx
add eax, ecx
or eax, 0xc124c7f3
mov ecx, 0xffffffff
xor ecx, 0x371991d7
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
mov ecx, eax
and ecx, 0x9753b87b
shl ecx, 1
add eax, 0x9753b87b
sub eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x60c1fed7
mov edi, 0xffffffff
xor edi, 0x60c1fed7
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0x60c1fed7
or eax, 0x60c1fed7
imul eax, edx
add eax, ecx
add eax, 0xb3c4f915
mov ecx, 0xb9f28503
xor edx, edx
div ecx
mov edi, eax
mov ecx, edi
xor ecx, 0xffffffff
and ecx, 0x7559f6a5
mov edx, 0xffffffff
xor edx, 0x7559f6a5
and edi, edx
mov eax, 0xffffffff
xor eax, 0x81fead24
and eax, 0x7559f6a5
and edx, 0x81fead24
or ecx, edi
or eax, edx
xor ecx, eax
add ecx, 0x6bf500e1
add ecx, 0x19af7a17
sub ecx, 0x6bf500e1
or ecx, 0x9936ad14
and ecx, 0xc2bf38be
mov eax, 0xffffffff
xor eax, 0xdd742e0f
add ecx, eax
add ecx, 1
mov eax, ecx
and eax, 0x49ad6179
shl eax, 1
xor ecx, 0x49ad6179
add ecx, eax
mov eax, 0xffffffff
xor eax, 0x1056407d
xor edx, edx
sub edx, 1
sub eax, edx
sub ecx, eax
mov eax, ecx
and eax, eax
xor eax, 0xffffffff
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x5dd64fbc
or eax, edx
mov edx, 0xffffffff
xor edx, 0x5dd64fbc
mov edi, 0xffffffff
xor edi, 0x5dd64fbc
or edx, edi
and ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
sub eax, 0x3d050562
mov ecx, eax
or ecx, ecx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xe46b17b6
mov edi, 0xffffffff
xor edi, 0xe46b17b6
and edx, edi
or ecx, edx
xor ecx, 0xffffffff
or eax, 0xe46b17b6
xor eax, 0xffffffff
or ecx, eax
xor ecx, 0xffffffff
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x523b8ab3
or eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x523b8ab3
or ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
sub eax, 0x5d52e991
mov ecx, 0x3f1b7a2c
xor edx, edx
div ecx
mov ecx, eax
or ecx, ecx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x6b23eda6
mov edi, 0xffffffff
xor edi, 0x6b23eda6
and edx, edi
or ecx, edx
xor ecx, 0xffffffff
or eax, 0x6b23eda6
xor eax, 0xffffffff
or ecx, eax
xor ecx, 0xffffffff
and ecx, 0x6eda89da
and ecx, 0x449ba706
mov eax, ecx
xor eax, 0x33749e3
xor eax, 0xffffffff
or ecx, 0x33749e3
and ecx, eax
mov eax, 0xffffffff
xor eax, 0x12ed49d4
xor edx, edx
sub edx, 1
sub eax, edx
sub ecx, eax
sub ecx, 0x711e0409
and ecx, 0xb969897a
mov eax, ecx
xor eax, 0xffffffff
mov dword [esi + 0x150], eax
mov edi, 0xffffffff
xor edi, 0x3435ad0d
mov edx, 0xffffffff
xor edx, 0x446b43c2
and eax, 0x446b43c2
mov dword [esi + 0x14c], eax
and ecx, edx
mov ebx, edi
and ebx, 0x446b43c2
mov eax, edx
and eax, 0x3435ad0d
mov dword [esi + 0x154], eax
mov eax, dword [esi + 0x14c]
or eax, ecx
mov ecx, dword [esi + 0x150]
mov dword [esi + 0x158], eax
mov eax, dword [esi + 0x154]
or ebx, eax
mov eax, dword [esi + 0x158]
xor eax, ebx
or ecx, edi
xor ecx, 0xffffffff
or edx, 0x446b43c2
and ecx, edx
or eax, ecx
or eax, 0xb0894ae3
or eax, 0x4f4b21a0
imul ecx, eax, 0xca817e79
mov edx, 0xffffffff
xor edx, 0xdb8d618d
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x72735eff
or ecx, edx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x72735eff
or eax, edx
and ecx, eax
xor ecx, 0xffffffff
sub ecx, 0x12fbb079
or ecx, 0x97cae994
mov edx, 0xffffffff
xor edx, 0x5f6299f7
mov eax, ecx
and eax, edx
mov edx, ecx
xor edx, 0x5f6299f7
add ecx, edx
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
and eax, edx
mov edx, 0xffffffff
xor edx, 0xdd781e32
mov edi, 0xffffffff
xor edi, 0xdd781e32
and edx, edi
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xdd781e32
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
sub eax, 0x8f733ae1
add eax, 0x99a967d1
add eax, 0x8f733ae1
add eax, 0x26b1d6fd
and eax, 0x60224fe1
mov ecx, 0xf9c11c9
xor edx, edx
div ecx
mov ecx, 0xa353a16f
xor edx, edx
div ecx
mov ecx, eax
mov eax, dword [esi + 0x1fc]
mov edx, ecx
xor edx, 0xffffffff
mov edi, 0xffffffff
xor edi, 0x9676b08a
and edx, edi
xor ecx, 0xffffffff
mov edi, 0xffffffff
xor edi, 0x9676b08a
and ecx, edi
xor edx, 0xffffffff
xor ecx, 0xffffffff
and edx, ecx
and edx, 0xe75f312c
sub edx, 0x666fd05f
and edx, 0xedb532b5
mov ecx, edx
and ecx, 0xcb5876b2
xor edx, 0xcb5876b2
or ecx, edx
xor edx, edx
sub edx, ecx
xor ecx, ecx
sub ecx, 0x47905d68
add edx, ecx
xor ecx, ecx
sub ecx, edx
and ecx, 0x7aa98baa
mov edi, ecx
and edi, 0x4d0ebe1e
xor ecx, 0x4d0ebe1e
or edi, ecx
and edi, 0x3b732f55
sub edi, 0xa6a7701e
add edi, 0x19fabc97
add edi, 0xa6a7701e
mov ecx, edi
and ecx, 0xdc766563
shl ecx, 1
xor edi, 0xdc766563
add edi, ecx
mov edx, edi
xor edx, 0xffffffff
and edx, 0x4a3a602
mov ebx, 0xffffffff
xor ebx, 0x4a3a602
mov ecx, edi
and ecx, ebx
imul ecx, edx
mov edx, edi
and edx, 0x4a3a602
or edi, 0x4a3a602
imul edi, edx
add edi, ecx
sub edi, 0x1d77f310
mov ecx, 0x97d8c501
mov edx, 0x3017a066
cmp edi, 0x492837d
cmova ecx, edx
mov dword [eax], ecx
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov bl, byte [esi + 0x14b]
mov ecx, 0x6231108f
mov edx, 0x879a030e
test bl, 1
cmovne ecx, edx
mov dword [eax], ecx
jmp 0x10044e6d
mov eax, dword [0x101e4c08]
xor edx, edx
div dword [0x101e4c0c]
mov ecx, 0x5cca48aa
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xfb67fccc
or eax, edx
and ecx, 0xfb67fccc
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xed1aeec
and eax, 0xe4e48071
xor eax, 0xa68f1df1
mov ecx, 0xf7c67d03
xor edx, edx
div ecx
add eax, 0x3e62a2e4
sub eax, 0xe9a85e55
mov ecx, 0xc406fe3a
xor edx, edx
div ecx
mov edi, 0xffffffff
xor edi, 0x1dd8aa4
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x1dd8aa4
or eax, 0x1dd8aa4
imul eax, edx
add eax, ecx
mov ecx, eax
and ecx, 0xf76da313
xor eax, 0xf76da313
or ecx, eax
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0x966e19a
or ecx, 0x966e19a
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xf48ba072
mov ecx, 0xffffffff
xor ecx, 0x7f4d435c
or eax, edx
or ecx, 0x7f4d435c
xor eax, 0xffffffff
and eax, ecx
sub eax, 0x4d269584
mov ecx, 0x1dccb8b2
xor edx, edx
div ecx
imul eax, eax, 0x11277c82
mov ecx, 0x87a4b34e
xor edx, edx
div ecx
mov ecx, 0x7bf709de
xor edx, edx
div ecx
mov ecx, 0x21d5b5b7
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0xd4079fc1
mov edx, 0xffffffff
xor edx, 0xd4079fc1
and eax, edx
sub eax, ecx
xor eax, 0xb2cd97d0
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0xe5b96aae
add ecx, eax
xor eax, eax
sub eax, ecx
mov ecx, 0xfcab2411
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0x15766858
mov edx, ecx
xor edx, 0xffffffff
and edx, 0x72287cca
mov edi, 0xffffffff
xor edi, 0x72287cca
mov eax, ecx
and eax, edi
imul eax, edx
mov edx, ecx
and edx, 0x72287cca
or ecx, 0x72287cca
imul ecx, edx
add ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x13114296
and eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x13114296
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
or eax, eax
xor eax, 0xffffffff
mov ecx, 0xe432e1cf
or ecx, 0xe432e1cf
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
imul eax, eax, 0xa86829ab
mov edx, eax
xor edx, 0xffffffff
and edx, 0xaf1785a8
mov edi, 0xffffffff
xor edi, 0xaf1785a8
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0xaf1785a8
or eax, 0xaf1785a8
imul eax, edx
add eax, ecx
xor ecx, ecx
sub ecx, 0x65a3df9f
sub eax, ecx
or eax, eax
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0x5475f6c1
mov edx, 0xffffffff
xor edx, 0x5475f6c1
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov edx, eax
xor edx, 0xffffffff
and edx, 0xcb3c9318
mov edi, 0xffffffff
xor edi, 0xcb3c9318
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0xcb3c9318
or eax, 0xcb3c9318
imul eax, edx
add eax, ecx
and eax, 0x87c62e68
xor eax, 0xd79fba7d
add eax, 0x6988272b
and eax, eax
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0xa0997da
mov edx, 0xffffffff
xor edx, 0xa0997da
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
mov ecx, 0xa5ad170c
xor edx, edx
div ecx
mov ecx, 0xffffffff
xor ecx, 0xb2fa50cf
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
imul eax, eax, 0x52f40937
mov ecx, 0xff5f9bdf
xor edx, edx
div ecx
mov ecx, 0xfa224055
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xf23927db
xor ecx, 0xffffffff
and ecx, 0xf23927db
shl ecx, 1
sub ecx, 0xf23927db
sub eax, ecx
imul eax, eax, 0xb5ad666c
add eax, 0x49d9d7ab
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x1d00d9d
and ecx, edx
or eax, 0x1d00d9d
xor eax, 0xffffffff
xor ecx, 0xffffffff
xor eax, 0xffffffff
and ecx, eax
mov eax, ecx
xor eax, 0xffffffff
and eax, 0xa54b0804
mov edx, 0xffffffff
xor edx, 0xa54b0804
and ecx, edx
or eax, ecx
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x829e1b1f
add ecx, eax
xor eax, eax
sub eax, ecx
or eax, 0xc19abed6
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0x75eacec6
add eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x9042def8
mov edi, 0xffffffff
xor edi, 0x9042def8
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0x9042def8
or eax, 0x9042def8
imul eax, edx
add eax, ecx
mov ecx, eax
and ecx, 0x7fec0531
shl ecx, 1
add eax, 0x7fec0531
sub eax, ecx
mov ecx, 0x88f32a35
xor edx, edx
div ecx
sub eax, 0xce3dd7ad
mov ecx, 0xd7b028a6
xor edx, edx
div ecx
mov ecx, eax
or ecx, 0x1c0d6dd9
mov edx, 0xffffffff
xor edx, 0xb1237590
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, 0x64ca05c7
xor edx, edx
div ecx
mov ebx, eax
mov eax, dword [esi + 0x1fc]
mov edi, ebx
xor edi, 0xffffffff
and edi, 0xc8b7dfbf
mov edx, 0xffffffff
xor edx, 0xc8b7dfbf
and ebx, edx
mov ecx, 0xffffffff
xor ecx, 0xa16f5505
and ecx, 0xc8b7dfbf
and edx, 0xa16f5505
or edi, ebx
or ecx, edx
xor edi, ecx
and edi, 0xf81e170c
and edi, 0x171adf21
mov ecx, 0xb761a73f
mov edx, 0x48ee6709
cmp edi, 0x2a886823
cmovae ecx, edx
mov dword [eax], ecx
jmp 0x10044e6d
mov ebx, dword [esi + 0x1b8]
mov ecx, dword [0x101e4c10]
mov edx, dword [0x101e4c14]
mov eax, ecx
and eax, edx
xor ecx, edx
or eax, ecx
and eax, eax
xor eax, 0xffffffff
mov ecx, 0x9ead2b86
and ecx, 0x9ead2b86
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0xffffffff
xor eax, 0xb372198b
mov ecx, 0x657e1438
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
and eax, 0x38302a8d
xor eax, 0xffffffff
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x38302a8d
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
mov edx, eax
xor edx, 0xffffffff
and edx, 0xe25323b6
mov edi, 0xffffffff
xor edi, 0xe25323b6
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0xe25323b6
or eax, 0xe25323b6
imul eax, edx
add eax, ecx
mov edi, 0xffffffff
xor edi, 0xcc0efc61
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xcc0efc61
or eax, 0xcc0efc61
imul eax, edx
add eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0xc9c0da0c
mov edi, 0xffffffff
xor edi, 0xc9c0da0c
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0xc9c0da0c
or eax, 0xc9c0da0c
imul eax, edx
add eax, ecx
and eax, 0xcfb57b17
add eax, 0x362e6392
add eax, 0xe7b81dcc
sub eax, 0x362e6392
mov ecx, eax
and ecx, 0x432b0642
shl ecx, 1
add eax, 0x432b0642
sub eax, ecx
add eax, 0x48b78f6f
imul eax, eax, 0x1cc35cc8
mov ecx, 0xe471fd23
xor edx, edx
div ecx
mov ecx, eax
mov edx, 0xffffffff
xor edx, 0xd4212558
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, 0x43e84955
xor edx, edx
div ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0x363fe449
add eax, ecx
and eax, 0x7153d1d5
xor eax, 0xcd371cef
mov ecx, 0x3bf35840
xor edx, edx
div ecx
xor eax, 0x9aae759b
sub eax, 0xedcb6575
imul eax, eax, 0xfa41d772
add eax, 0xf7139b4f
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0xc8b6b24f
add ecx, eax
xor eax, eax
sub eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x1058f1c
mov edx, 0xffffffff
xor edx, 0x1058f1c
and eax, edx
sub eax, ecx
and eax, 0xea4253b4
or eax, 0x221fcf38
sub eax, 0x979253d3
xor eax, 0x2ce853b7
sub eax, 0xf43f1a64
imul eax, eax, 0x7b758bf8
mov ecx, 0xe52b247a
xor edx, edx
div ecx
mov edx, 0xffffffff
xor edx, 0x292ce3d2
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0x292ce3d2
add eax, edx
sub eax, ecx
mov ecx, eax
and ecx, 0xfb33cf57
or eax, 0xfb33cf57
add ecx, eax
mov eax, ecx
or eax, eax
xor eax, 0xffffffff
mov edx, 0x7d711de6
or edx, 0x7d711de6
xor edx, 0xffffffff
or eax, edx
xor eax, 0xffffffff
or ecx, 0x7d711de6
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov edx, 0xffffffff
xor edx, 0x11d7d9c6
mov ecx, eax
xor ecx, edx
and ecx, eax
or ecx, 0x3d733c52
add ecx, 0x35a41b19
and ecx, 0xe204598b
xor ecx, 0x3753a72d
mov eax, ecx
and eax, 0xb621eba1
shl eax, 1
xor ecx, 0xb621eba1
add ecx, eax
xor eax, eax
sub eax, 0xe5b3c48d
add ecx, eax
mov eax, ecx
or eax, 0xd34d9015
xor eax, 0xffffffff
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xd34d9015
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
or eax, 0x9e9163cb
add eax, 0x5246312a
mov ecx, 0x83db4062
xor edx, edx
div ecx
and eax, eax
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0xa0d92d54
mov edx, 0xffffffff
xor edx, 0xa0d92d54
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
and eax, 0x495d72eb
mov ecx, 0xcc7b63dd
xor edx, edx
div ecx
mov ecx, 0x5b51ba6c
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0x6a4c7931
mov eax, ecx
or eax, 0xe1502d0b
xor eax, 0xffffffff
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xe1502d0b
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0x3c1fec65
xor edx, edx
div ecx
mov ecx, 0x6f1aa35
xor edx, edx
div ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x37935d7d
mov ecx, 0xffffffff
xor ecx, 0xf944f1fc
or eax, edx
or ecx, 0xf944f1fc
xor eax, 0xffffffff
and eax, ecx
sub eax, 0xc2788277
mov edi, eax
and edi, 0x2c707a3
or eax, 0x2c707a3
add edi, eax
mov ecx, edi
xor ecx, 0xffffffff
and ecx, 0xce0ac3cd
mov edx, 0xffffffff
xor edx, 0xce0ac3cd
mov eax, edi
and eax, edx
imul eax, ecx
mov ecx, edi
and ecx, 0xce0ac3cd
or edi, 0xce0ac3cd
imul edi, ecx
add edi, eax
sub edi, 0x3e914a6a
mov ecx, edi
xor ecx, 0xffffffff
and ecx, 0xd58eaa92
mov edx, 0xffffffff
xor edx, 0xd58eaa92
mov eax, edi
and eax, edx
mov edx, dword [esi + 0x1ac]
imul eax, ecx
mov ecx, edi
and ecx, 0xd58eaa92
or edi, 0xd58eaa92
imul edi, ecx
mov ecx, dword [esi + 0x1bc]
add edi, eax
mov eax, dword [esi + 0x1fc]
mov edx, dword [edx]
mov ebx, dword [ebx]
mov edx, dword [edx + ebx*4]
mov dword [ecx], edx
mov ecx, 0xa067052c
mov edx, 0xb761a73f
cmp edi, 0x3aa13e47
cmova ecx, edx
mov dword [eax], ecx
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov dword [eax], 0x372d11
jmp 0x10044e6d
mov eax, dword [str.__zn]
mov edx, dword [0x101e4c1c]
or eax, eax
xor eax, 0xffffffff
mov ecx, edx
xor ecx, 0xffffffff
xor edx, 0xffffffff
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
or eax, 0x21e6d3a5
sub eax, 0x735ba23
mov ecx, 0x6af04ba3
xor edx, edx
div ecx
mov ecx, 0x6915540f
xor edx, edx
div ecx
sub eax, 0x96e1dc36
add eax, 0x333d2322
add eax, 0x96e1dc36
mov ecx, 0x6de83aa9
xor edx, edx
div ecx
and eax, 0xb013703f
mov ecx, 0xc074f7ff
xor edx, edx
div ecx
add eax, 0x769c9497
sub eax, 0x9e2ee29e
sub eax, 0x769c9497
or eax, 0xc1249d1d
xor ecx, ecx
sub ecx, 0xfc3bf5ce
sub eax, ecx
add eax, 0x7096840f
add eax, 0xaaddb4d1
sub eax, 0x7096840f
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x2af0bae2
mov ecx, 0xffffffff
xor ecx, 0xc62fd5e7
or eax, edx
or ecx, 0xc62fd5e7
xor eax, 0xffffffff
and eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0xf26918ba
mov edx, 0xffffffff
xor edx, 0xf26918ba
and eax, edx
sub eax, ecx
mov ecx, eax
xor ecx, 0xdf1de65f
xor ecx, 0xffffffff
or eax, 0xdf1de65f
and eax, ecx
sub eax, 0x42d779e6
imul eax, eax, 0xc3d84d40
mov ecx, 0x9af6464
xor edx, edx
div ecx
mov edi, eax
mov eax, edi
xor eax, 0xffffffff
and eax, 0x8ff965ad
mov edx, 0xffffffff
xor edx, 0x8ff965ad
and edi, edx
mov ecx, 0xffffffff
xor ecx, 0xd877deef
and ecx, 0x8ff965ad
and edx, 0xd877deef
or eax, edi
or ecx, edx
xor eax, ecx
and eax, 0x5b818c8b
or eax, eax
xor eax, 0xffffffff
mov ecx, 0x1f53d72a
or ecx, 0x1f53d72a
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
or eax, 0xecc0b3e9
or eax, 0xa4d6324f
mov ecx, 0x7969dc87
xor edx, edx
div ecx
mov edi, 0xffffffff
xor edi, 0xb2f51f23
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xb2f51f23
or eax, 0xb2f51f23
imul eax, edx
add eax, ecx
or eax, 0x345a859
imul ecx, eax, 0x308f57ba
or ecx, ecx
xor ecx, 0xffffffff
mov eax, 0x95e36a9a
or eax, 0x95e36a9a
xor eax, 0xffffffff
xor ecx, 0xffffffff
xor eax, 0xffffffff
and ecx, eax
mov eax, ecx
and eax, 0x795090d9
shl eax, 1
add ecx, 0x795090d9
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xdde74630
and eax, edx
or ecx, 0xdde74630
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
and eax, 0xf8d7f145
and eax, 0xb5ed16f5
add eax, 0xd62337cd
xor eax, 0xe0465059
sub eax, 0x39934fd6
mov ecx, eax
and ecx, 0x28669287
or eax, 0x28669287
add ecx, eax
mov edx, 0xffffffff
xor edx, 0xae3ddaf7
mov eax, ecx
and eax, edx
mov edx, ecx
xor edx, 0xae3ddaf7
add ecx, edx
sub ecx, eax
mov eax, ecx
and eax, 0x162ebfb1
shl eax, 1
add ecx, 0x162ebfb1
sub ecx, eax
and ecx, 0x82693fe9
mov eax, ecx
and eax, 0x73a375f
xor ecx, 0x73a375f
or eax, ecx
imul eax, eax, 0xc18ab288
mov ecx, 0xa771eb1c
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0x8cd5c212
xor ecx, 0xffffffff
and ecx, 0x8cd5c212
shl ecx, 1
sub ecx, 0x8cd5c212
sub eax, ecx
xor ecx, ecx
sub ecx, 0x10a673fb
sub eax, ecx
or eax, 0x48da9425
and eax, eax
xor eax, 0xffffffff
mov ecx, 0x31c7ab3a
and ecx, 0x31c7ab3a
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x90ae688c
xor edx, edx
div ecx
mov ecx, 0x95bbc663
xor edx, edx
div ecx
and eax, 0x492ceb
mov edx, 0xffffffff
xor edx, 0x3792edfd
mov ecx, eax
xor ecx, edx
and ecx, eax
sub ecx, 0xf9db9548
mov eax, ecx
and eax, 0x6f9acb6a
xor ecx, 0x6f9acb6a
or eax, ecx
sub eax, 0xa945dbae
mov ecx, 0x15e05ad9
xor edx, edx
div ecx
mov ecx, 0xffffffff
xor ecx, 0xab122335
add eax, ecx
add eax, 1
mov ecx, 0xb33a132d
xor edx, edx
div ecx
mov edi, eax
mov eax, dword [esi + 0x1fc]
and edi, 0xeccd154e
mov ecx, edi
add ecx, 1
xor edi, 0xffffffff
or edi, 0x8cdf578c
add edi, ecx
and edi, 0xe9b315f9
add edi, 0x12f029d0
sub edi, 0xe05c5380
sub edi, 0x12f029d0
mov ecx, 0x9a7b1c94
mov edx, 0x4e4c7988
cmp edi, 0x9547bd3c
cmovbe ecx, edx
mov dword [eax], ecx
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov dword [eax], 0xe9c57be4
jmp 0x10044e6d
mov eax, dword [0x101e4c28]
mov edx, dword [0x101e4c2c]
mov ecx, eax
and ecx, edx
shl ecx, 1
add eax, edx
sub eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x38d6c0d6
add eax, ecx
add eax, 1
add eax, 0x8d0aa03f
mov ecx, eax
and ecx, 0x36d90d85
shl ecx, 1
add eax, 0x36d90d85
sub eax, ecx
and eax, 0x4db6e8c3
mov edx, 0xffffffff
xor edx, 0x2046ce84
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0x2046ce84
add eax, edx
sub eax, ecx
add eax, 0x7e44b572
mov ecx, 0x96d17433
xor edx, edx
div ecx
sub eax, 0xd4243058
and eax, 0xc4bec707
sub eax, 0x46ee9c25
add eax, 0x31addb6b
add eax, 0x46ee9c25
sub eax, 0x3bf2730f
and eax, 0xb3561a20
xor eax, 0x5195f0c0
mov ecx, 0xddeccb5b
xor edx, edx
div ecx
mov ecx, 0x14949a67
xor edx, edx
div ecx
imul eax, eax, 0xfe445b66
mov ecx, 0x97cc5917
xor edx, edx
div ecx
mov ecx, eax
and ecx, 0xe10f5a18
xor ecx, 0xffffffff
add eax, 0xe10f5a18
add eax, 1
add eax, ecx
xor eax, 0x75cfbcfb
or eax, 0xf4b00be2
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0xc9af7326
mov edx, 0xffffffff
xor edx, 0xc9af7326
and eax, edx
sub eax, ecx
xor eax, 0xfdeb3c06
mov ecx, eax
xor ecx, 0x238f861e
mov edx, 0xffffffff
xor edx, 0x238f861e
and eax, edx
shl eax, 1
sub eax, ecx
sub eax, 0x6f71c95b
add eax, 0xbbbf715d
imul ecx, eax, 0x94545c12
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
or eax, edx
and eax, 0xef4856e8
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xef4856e8
mov edi, 0xffffffff
xor edi, 0xef4856e8
or edx, edi
xor ecx, 0xffffffff
xor edx, 0xffffffff
or ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0xabd55f1d
add ecx, eax
xor eax, eax
sub eax, ecx
mov ecx, 0x28739b6e
xor edx, edx
div ecx
or eax, 0x9fc5ced3
or eax, 0x90f5ea9
and eax, 0xbfdf83aa
mov ecx, 0x2f48cee6
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
and eax, 0xb6174dc6
xor eax, 0xffffffff
add ecx, 0xb6174dc6
add ecx, 1
add ecx, eax
mov eax, ecx
and eax, 0x4f03cf9a
xor ecx, 0x4f03cf9a
or eax, ecx
or eax, eax
xor eax, 0xffffffff
mov ecx, 0x6ea0b120
or ecx, 0x6ea0b120
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0x9493364d
xor edx, edx
div ecx
and eax, 0x27aa5717
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0xe5b88cd9
mov edx, 0xffffffff
xor edx, 0xe5b88cd9
and eax, edx
sub eax, ecx
add eax, 0x709a09a8
add eax, 0x69b2fa98
sub eax, 0x709a09a8
mov ecx, 0xd4c6fd22
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
and eax, 0xd2b1c1f1
shl eax, 1
add ecx, 0xd2b1c1f1
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
and eax, 0xaae5f022
mov edx, 0xffffffff
xor edx, 0xaae5f022
and ecx, edx
or eax, ecx
mov ecx, 0xacb93c2b
xor edx, edx
div ecx
add eax, 0x9fb94e9a
mov ecx, eax
and ecx, 0xba6965cf
shl ecx, 1
xor eax, 0xba6965cf
add eax, ecx
mov ecx, 0x16740d03
xor edx, edx
div ecx
mov ecx, 0xd1799593
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
and eax, eax
xor eax, 0xffffffff
and eax, 0xfa588ab4
xor eax, 0xffffffff
mov edx, 0xfa588ab4
and edx, 0xfa588ab4
xor edx, 0xffffffff
and ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
or eax, eax
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0xa18be3a6
mov edx, 0xffffffff
xor edx, 0xa18be3a6
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0x2fe54cab
xor edx, edx
div ecx
mov ecx, eax
mov eax, dword [esi + 0x1fc]
mov edx, 0xffffffff
xor edx, 0x7fd6fc52
mov ebx, ecx
xor ebx, edx
and ebx, ecx
add ebx, 0x886d8227
sub ebx, 0xf063b755
sub ebx, 0x886d8227
add ebx, 0x7913212d
mov edi, ebx
xor edi, 0xffffffff
and edi, 0x1033a1a3
mov edx, 0xffffffff
xor edx, 0x1033a1a3
and ebx, edx
mov ecx, 0xffffffff
xor ecx, 0xb0cd4b2b
and ecx, 0x1033a1a3
and edx, 0xb0cd4b2b
or edi, ebx
or ecx, edx
xor edi, ecx
or edi, 0x1d61f8c
or edi, 0xbedfdf83
sub edi, 0x6766bdc3
sub edi, 0x4122506b
add edi, 0x6766bdc3
xor ecx, ecx
sub ecx, 0x6b91b9d2
add edi, ecx
mov ebx, 0xffffffff
xor ebx, 0xe35d74dd
mov edx, edi
and edx, ebx
mov ecx, edi
or ecx, ebx
xor ecx, 0xffffffff
imul ecx, edx
mov edx, edi
and edx, 0xe35d74dd
or edi, 0xe35d74dd
imul edi, edx
add edi, ecx
mov ecx, 0xbc9a9f72
mov edx, 0x6e60b3f9
cmp edi, 0x46160bdb
cmovne ecx, edx
mov dword [eax], ecx
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov dword [eax], 0x156b2a6d
jmp 0x10044e6d
mov eax, dword [0x101e4c38]
and eax, dword [0x101e4c3c]
imul eax, eax, 0xed892f04
sub eax, 0xe4b69465
mov ecx, 0xe075a3a2
xor edx, edx
div ecx
imul edi, eax, 0x289be16e
mov eax, edi
xor eax, 0xffffffff
and eax, 0x6446c6dd
mov edx, 0xffffffff
xor edx, 0x6446c6dd
and edi, edx
mov ecx, 0xffffffff
xor ecx, 0xc7e5c188
and ecx, 0x6446c6dd
and edx, 0xc7e5c188
or eax, edi
or ecx, edx
xor eax, ecx
mov ecx, 0xbf6eb3a1
xor edx, edx
div ecx
imul eax, eax, 0xd132a952
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x61ab9c2
mov ecx, 0xffffffff
xor ecx, 0x81ab8509
or eax, edx
or ecx, 0x81ab8509
xor eax, 0xffffffff
and eax, ecx
xor eax, 0xc922c61e
mov ecx, eax
and ecx, 0x919e4632
shl ecx, 1
add eax, 0x919e4632
sub eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0xf630101b
mov edx, 0xffffffff
xor edx, 0xf630101b
and eax, edx
sub eax, ecx
or eax, 0xa5a98e5c
sub eax, 0x31c5d9f9
and eax, 0xa1efd29
or eax, 0x54926b37
imul eax, eax, 0x60ff65ad
add eax, 0xdcfa8b35
mov edx, eax
xor edx, 0xffffffff
and edx, 0x73f238a4
mov edi, 0xffffffff
xor edi, 0x73f238a4
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0x73f238a4
or eax, 0x73f238a4
imul eax, edx
add eax, ecx
xor eax, 0xcb905c8
add eax, 0x1f1c4df9
or eax, 0x53c3c9a6
mov ecx, 0x7c4f2116
xor edx, edx
div ecx
mov ecx, 0xf1908428
xor edx, edx
div ecx
mov ecx, eax
sub ecx, 0x3eb4b525
mov eax, ecx
and eax, 0x14b496e5
xor eax, 0xffffffff
and ecx, 0x14b496e5
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x463d749d
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
imul ecx, eax, 0x563aa09c
mov eax, ecx
xor eax, 0xffffffff
mov dword [esi + 0x11c], eax
mov edi, 0xffffffff
xor edi, 0x912a3e19
mov edx, 0xffffffff
xor edx, 0xda88e1c4
and eax, 0xda88e1c4
mov dword [esi + 0x118], eax
and ecx, edx
mov ebx, edi
and ebx, 0xda88e1c4
mov eax, edx
and eax, 0x912a3e19
mov dword [esi + 0x120], eax
mov eax, dword [esi + 0x118]
or eax, ecx
mov ecx, dword [esi + 0x11c]
mov dword [esi + 0x124], eax
mov eax, dword [esi + 0x120]
or ebx, eax
mov eax, dword [esi + 0x124]
xor eax, ebx
or ecx, edi
xor ecx, 0xffffffff
or edx, 0xda88e1c4
and ecx, edx
or eax, ecx
mov ecx, 0x4e4999cc
xor edx, edx
div ecx
sub eax, 0x6af12e79
mov ecx, 0xb4d2f7f6
xor edx, edx
div ecx
or eax, 0x91736d1b
mov ecx, 0x8544838f
xor edx, edx
div ecx
xor eax, 0x198d1bd2
mov ecx, eax
xor ecx, 0xf3c005b3
xor ecx, 0xffffffff
or eax, 0xf3c005b3
and eax, ecx
mov ecx, 0x1d87b959
xor edx, edx
div ecx
sub eax, 0xcdf44687
mov ecx, 0x313ee0e2
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
and eax, 0xe14cc901
xor eax, 0xffffffff
add ecx, 0xe14cc901
add ecx, 1
add ecx, eax
mov eax, ecx
xor eax, 0x2f1a36b4
xor eax, 0xffffffff
or ecx, 0x2f1a36b4
and ecx, eax
mov eax, 0xffffffff
xor eax, 0xf4b2c816
add ecx, eax
add ecx, 1
mov edx, 0xffffffff
xor edx, 0xa532a5e1
mov eax, ecx
and eax, edx
mov edx, ecx
xor edx, 0xa532a5e1
add ecx, edx
sub ecx, eax
add ecx, 0xff1171a
sub ecx, 0x37b83d43
sub ecx, 0xff1171a
add ecx, 0xcd0e3f84
mov eax, ecx
xor eax, 0xa88490fd
mov edx, 0xffffffff
xor edx, 0xa88490fd
and ecx, edx
shl ecx, 1
sub ecx, eax
mov edx, 0xffffffff
xor edx, 0xf935b9d
mov eax, ecx
xor eax, edx
and eax, ecx
xor eax, 0xe7d43a3e
xor ecx, ecx
sub ecx, 0x7ea12658
add eax, ecx
sub eax, 0x7ffaa1af
mov edx, 0xffffffff
xor edx, 0x18a25dfd
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0x18a25dfd
add eax, edx
sub eax, ecx
mov ecx, eax
and ecx, 0xcaa6a3df
xor eax, 0xcaa6a3df
or ecx, eax
mov eax, ecx
or eax, 0xa3aa74cb
xor eax, 0xffffffff
or ecx, 0xa3aa74cb
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xb4763d55
mov ecx, 0xffffffff
xor ecx, 0x9c2e6f98
or eax, edx
or ecx, 0x9c2e6f98
xor eax, 0xffffffff
and eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x91b4aa78
mov edi, 0xffffffff
xor edi, 0x91b4aa78
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0x91b4aa78
or eax, 0x91b4aa78
imul eax, edx
add eax, ecx
mov ecx, eax
and ecx, 0xbdcdb623
shl ecx, 1
xor eax, 0xbdcdb623
add eax, ecx
mov edi, 0xffffffff
xor edi, 0xdf365b08
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xdf365b08
or eax, 0xdf365b08
imul eax, edx
add eax, ecx
mov ecx, eax
and ecx, 0x7588d452
shl ecx, 1
xor eax, 0x7588d452
add eax, ecx
mov ecx, eax
xor ecx, 0xb5295f10
xor ecx, 0xffffffff
or eax, 0xb5295f10
and eax, ecx
mov ecx, 0x811eb3d3
xor edx, edx
div ecx
mov ecx, 0xa8526fe2
xor edx, edx
div ecx
mov edi, eax
mov eax, dword [esi + 0x1fc]
mov ecx, 0x2bf28d2a
mov edx, 0x10de8c9c
cmp edi, 0x8ee5db52
cmove ecx, edx
mov dword [eax], ecx
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov dword [eax], 0xd0407539
jmp 0x10044e6d
mov eax, dword [0x101e4c48]
mov ecx, dword [0x101e4c4c]
sub eax, 0x3f8c9230
sub eax, ecx
add eax, 0x3f8c9230
mov ecx, eax
xor ecx, 0xa464d7cd
xor ecx, 0xffffffff
or eax, 0xa464d7cd
and eax, ecx
mov ecx, 0xc86409c2
xor edx, edx
div ecx
mov ecx, eax
xor eax, eax
sub eax, 0xda07615d
sub ecx, eax
add ecx, 0xeb6792b
or ecx, 0xbc5b5cf3
add ecx, 0x78af6763
and ecx, 0xcbd2689a
sub ecx, 0xfd6676b2
or ecx, 0xf92e54de
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, 0x83331144
add eax, ecx
xor edi, edi
sub edi, eax
xor edi, 0xe705f88d
mov ecx, edi
xor ecx, 0xffffffff
and ecx, 0xfd969148
mov edx, 0xffffffff
xor edx, 0xfd969148
mov eax, edi
and eax, edx
imul eax, ecx
mov ecx, edi
and ecx, 0xfd969148
or edi, 0xfd969148
imul edi, ecx
add edi, eax
mov eax, 0xffffffff
xor eax, 0x1e738b72
add edi, eax
add edi, 1
sub edi, 0xc1fc4e42
add edi, 0xe5caed1d
add edi, 0xc1fc4e42
mov eax, edi
xor eax, 0xffffffff
and eax, 0xa7b29bd7
mov edx, 0xffffffff
xor edx, 0xa7b29bd7
and edi, edx
mov ecx, 0xffffffff
xor ecx, 0x7fa7a526
and ecx, 0xa7b29bd7
and edx, 0x7fa7a526
or eax, edi
or ecx, edx
xor eax, ecx
mov ecx, 0x5c0dc2e9
xor edx, edx
div ecx
or eax, 0xcee495c
mov ecx, 0x6b0b2b14
xor edx, edx
div ecx
sub eax, 0xe4d562dc
mov ecx, eax
xor ecx, 0x4cfe9bbb
xor ecx, 0xffffffff
or eax, 0x4cfe9bbb
and eax, ecx
or eax, 0xb3563e91
imul eax, eax, 0x15b99230
mov edi, 0xffffffff
xor edi, 0xb283955
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xb283955
or eax, 0xb283955
imul eax, edx
add eax, ecx
imul eax, eax, 0xa8860c9b
mov ecx, eax
and ecx, 0x5940f6eb
or eax, 0x5940f6eb
add ecx, eax
sub ecx, 0x81094e0d
add ecx, 0x3b450ab5
add ecx, 0x81094e0d
mov eax, ecx
add eax, 1
xor ecx, 0xffffffff
or ecx, 0xb52ae98c
add ecx, eax
mov eax, ecx
xor eax, 0x6b035dbf
xor eax, 0xffffffff
and eax, 0x6b035dbf
shl eax, 1
sub eax, 0x6b035dbf
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
and eax, edx
mov edx, 0x5adc0c37
or edx, 0x5adc0c37
xor edx, 0xffffffff
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
or ecx, 0x5adc0c37
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
or eax, 0x9b215cd5
add eax, 0x5ba43649
sub eax, 0x9f8ddb4d
sub eax, 0x5ba43649
mov ecx, 0x32af1704
xor edx, edx
div ecx
mov ecx, 0x561b40b4
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
or eax, edx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xf321bea
or eax, edx
mov edx, 0xffffffff
xor edx, 0xf321bea
mov edi, 0xffffffff
xor edi, 0xf321bea
or edx, edi
xor ecx, 0xffffffff
xor edx, 0xffffffff
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
mov ecx, eax
xor ecx, 0xffffffff
xor eax, 0xffffffff
and ecx, eax
mov eax, 0xffffffff
xor eax, 0x243f72fc
mov edx, 0xffffffff
xor edx, 0x243f72fc
and eax, edx
or ecx, eax
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xe7b543f7
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, eax
xor ecx, 0x5349eea1
xor ecx, 0xffffffff
or eax, 0x5349eea1
and eax, ecx
sub eax, 0x7671dc4c
imul eax, eax, 0x3727c30f
mov edx, eax
xor edx, 0xffffffff
and edx, 0x3481c735
mov edi, 0xffffffff
xor edi, 0x3481c735
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0x3481c735
or eax, 0x3481c735
imul eax, edx
add eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
mov dword [esi + 0x110], ecx
mov edi, 0xffffffff
xor edi, 0x880302f
mov edx, 0xffffffff
xor edx, 0xdcdfcfcb
and ecx, 0xdcdfcfcb
and eax, edx
mov dword [esi + 0x108], eax
mov ebx, edi
and ebx, 0xdcdfcfcb
mov eax, edx
and eax, 0x880302f
mov dword [esi + 0x10c], eax
mov eax, dword [esi + 0x108]
or ecx, eax
mov eax, dword [esi + 0x10c]
or ebx, eax
mov eax, dword [esi + 0x110]
xor ecx, ebx
or eax, edi
xor eax, 0xffffffff
or edx, 0xdcdfcfcb
and eax, edx
or ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
or eax, edx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x96264065
or eax, edx
mov edx, 0x96264065
and edx, 0x96264065
xor edx, 0xffffffff
and ecx, edx
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0xffffffff
sub eax, 0x370709a
sub eax, 0x68b9dedb
add eax, 0x370709a
xor eax, 0x16e86d1d
xor eax, 0x7dff2c10
mov edx, 0xffffffff
xor edx, 0x188af2f9
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0x188af2f9
add eax, edx
sub eax, ecx
mov ecx, 0xf151de0b
xor edx, edx
div ecx
mov ecx, eax
sub ecx, 0x7dcb746c
add ecx, 0xfb1a3809
add ecx, 0x7dcb746c
mov edx, 0xffffffff
xor edx, 0xf9bf7b3
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, 0xd5d77165
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x83691788
mov edx, 0xffffffff
xor edx, 0x83691788
and eax, edx
or ecx, eax
sub ecx, 0x9c597da4
mov edx, 0xffffffff
xor edx, 0x82ef2408
mov eax, ecx
xor eax, edx
and eax, ecx
or eax, 0x63c39c7d
sub eax, 0x2909e0e5
add eax, 0x1f15817c
mov ecx, 0x8c5a035e
xor edx, edx
div ecx
mov edi, eax
mov eax, dword [esi + 0x1fc]
sub edi, 0x9b0fcfe9
mov ecx, edi
and ecx, 0xab2cd267
xor ecx, 0xffffffff
add edi, 0xab2cd267
add edi, 1
add edi, ecx
add edi, 0xc376f7eb
mov ecx, 0x765a340f
mov edx, 0x903e4aba
cmp edi, 0xc25e5844
cmove ecx, edx
mov dword [eax], ecx
jmp 0x10044e6d
mov ecx, dword [0x101e4c58]
mov eax, dword [0x101e4c5c]
mov ebx, ecx
xor ebx, 0xffffffff
mov dword [esi + 0xec], ebx
mov edi, eax
xor edi, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x7528903
and ebx, 0x7528903
mov dword [esi + 0xe8], ebx
and ecx, edx
mov ebx, edi
and ebx, 0x7528903
and eax, edx
mov dword [esi + 0xf0], eax
mov eax, dword [esi + 0xe8]
or eax, ecx
mov ecx, dword [esi + 0xec]
mov dword [esi + 0xf4], eax
mov eax, dword [esi + 0xf0]
or ebx, eax
mov eax, dword [esi + 0xf4]
xor eax, ebx
or ecx, edi
xor ecx, 0xffffffff
or edx, 0x7528903
and ecx, edx
or eax, ecx
xor eax, 0xbc49aacc
sub eax, 0xbee5995f
add eax, 0x74dfbeae
imul eax, eax, 0x8d1bfcb1
sub eax, 0x78f07ca2
mov edx, eax
xor edx, 0xffffffff
and edx, 0x92206f75
mov edi, 0xffffffff
xor edi, 0x92206f75
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0x92206f75
or eax, 0x92206f75
imul eax, edx
add eax, ecx
xor eax, 0x70e849d3
xor eax, 0xe3d1089b
mov ecx, 0xc56452ec
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xdded0be6
add ecx, 0xa967e27
add ecx, 0x68315dfd
xor ecx, 0x73113ed1
mov eax, ecx
xor eax, 0x618f5c3a
xor eax, 0xffffffff
and eax, 0x618f5c3a
shl eax, 1
sub eax, 0x618f5c3a
sub ecx, eax
mov eax, ecx
and eax, eax
xor eax, 0xffffffff
and eax, 0x3d0a2759
xor eax, 0xffffffff
mov edx, 0x3d0a2759
and edx, 0x3d0a2759
xor edx, 0xffffffff
and ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0xd260d02c
xor edx, edx
div ecx
mov edi, eax
sub edi, 0xb94ecd60
mov edx, 0xffffffff
xor edx, 0x396aa1df
mov ecx, edi
and ecx, edx
mov eax, edi
or eax, edx
xor eax, 0xffffffff
imul eax, ecx
mov ecx, edi
and ecx, 0x396aa1df
or edi, 0x396aa1df
imul edi, ecx
add edi, eax
mov ecx, 0xffffffff
xor ecx, 0xe6834c69
mov eax, edi
and eax, ecx
mov ecx, edi
xor ecx, 0xe6834c69
add edi, ecx
sub edi, eax
mov eax, edi
xor eax, 0xffffffff
and eax, 0x2dfea114
mov edx, 0xffffffff
xor edx, 0x2dfea114
and edi, edx
mov ecx, 0xffffffff
xor ecx, 0xcb31e128
and ecx, 0x2dfea114
and edx, 0xcb31e128
or eax, edi
or ecx, edx
xor eax, ecx
mov ecx, 0x3906b51
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xe7209042
xor ecx, 0xffffffff
or eax, 0xe7209042
and eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0xc178ab59
mov edi, 0xffffffff
xor edi, 0xc178ab59
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0xc178ab59
or eax, 0xc178ab59
imul eax, edx
add eax, ecx
mov ecx, 0x93676590
xor edx, edx
div ecx
mov ecx, 0x7b8fe0af
xor edx, edx
div ecx
mov ecx, 0xdcedbaa3
xor edx, edx
div ecx
xor eax, 0x2e9d9f18
and eax, 0x3a8a4fe1
mov ecx, eax
xor ecx, 0xa66c7f04
xor ecx, 0xffffffff
or eax, 0xa66c7f04
and eax, ecx
mov ecx, 0x29f9ea67
xor edx, edx
div ecx
add eax, 0x6b4a9fd
mov edi, 0xffffffff
xor edi, 0xb05e5fa7
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xb05e5fa7
or eax, 0xb05e5fa7
imul eax, edx
add eax, ecx
add eax, 0xb3504458
imul eax, eax, 0x41f43afe
add eax, 0xffeac0c0
mov ecx, 0xe470d929
xor edx, edx
div ecx
mov edi, 0xffffffff
xor edi, 0x9abc414f
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x9abc414f
or eax, 0x9abc414f
imul eax, edx
add eax, ecx
add eax, 0x61b979b4
mov ecx, eax
and ecx, 0x96460c9f
or eax, 0x96460c9f
add ecx, eax
sub ecx, 0xc5c901e2
add ecx, 0x4c9deee
add ecx, 0xc5c901e2
mov eax, ecx
xor eax, 0xffffffff
and eax, 0xd073f3f3
mov edx, 0xffffffff
xor edx, 0xd073f3f3
and ecx, edx
or eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0xc72da2ab
mov edi, 0xffffffff
xor edi, 0xc72da2ab
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0xc72da2ab
or eax, 0xc72da2ab
imul eax, edx
add eax, ecx
add eax, 0xf39edd53
sub eax, 0x4ae9cb7a
add eax, 0x201c0062
add eax, 0x5c78ce0c
sub eax, 0x201c0062
imul eax, eax, 0xc9e80bd9
imul eax, eax, 0x5da30fd3
add eax, 0xcde32721
and eax, 0xd125e916
and eax, 0x3c90b21f
sub eax, 0xa193b999
mov ecx, 0xa23f155b
xor edx, edx
div ecx
imul ecx, eax, 0xfb61be6f
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
and eax, edx
mov edx, 0xffffffff
xor edx, 0xac4c0769
mov edi, 0xffffffff
xor edi, 0xac4c0769
and edx, edi
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
or ecx, 0xac4c0769
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0x915665ba
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0xf761505c
mov edx, 0xffffffff
xor edx, 0xf761505c
and eax, edx
sub eax, ecx
mov ecx, 0x9fab2a55
xor edx, edx
div ecx
mov edi, 0xffffffff
xor edi, 0xd83b895
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xd83b895
or eax, 0xd83b895
imul eax, edx
add eax, ecx
add eax, 0x20f53c67
mov ecx, 0xea04e5cf
xor edx, edx
div ecx
mov edi, eax
mov eax, dword [esi + 0x1fc]
mov ecx, 0x27866e5f
mov edx, 0xe54d25bc
cmp edi, 0x9dc0f362
cmove ecx, edx
mov dword [eax], ecx
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov edx, dword [esi + 0x1c0]
mov ecx, dword [esi + 0x1b4]
mov ecx, dword [ecx]
mov edx, dword [edx]
mov cx, word [ecx + edx*2]
mov word [esi + 0xda], cx
mov dword [eax], 0x62c17b7
jmp 0x10044e6d
mov ecx, dword [0x101e4c68]
imul ecx, dword [0x101e4c6c]
xor eax, eax
sub eax, 0xb1842aa8
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x79b62075
mov edx, 0xffffffff
xor edx, 0x79b62075
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
imul eax, eax, 0x92030c
mov edx, eax
xor edx, 0xffffffff
and edx, 0x558cd379
mov edi, 0xffffffff
xor edi, 0x558cd379
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0x558cd379
or eax, 0x558cd379
imul eax, edx
add eax, ecx
mov ecx, 0xc224478e
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xffffffff
mov dword [esi + 0xa4], ecx
mov edi, 0xffffffff
xor edi, 0x9a567bc9
mov edx, 0xffffffff
xor edx, 0xf9453afa
and ecx, 0xf9453afa
and eax, edx
mov dword [esi + 0x9c], eax
mov ebx, edi
and ebx, 0xf9453afa
mov eax, edx
and eax, 0x9a567bc9
mov dword [esi + 0xa0], eax
mov eax, dword [esi + 0x9c]
or ecx, eax
mov eax, dword [esi + 0xa0]
or ebx, eax
mov eax, dword [esi + 0xa4]
xor ecx, ebx
or eax, edi
xor eax, 0xffffffff
or edx, 0xf9453afa
and eax, edx
or ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov dword [esi + 0xac], eax
mov edi, 0xffffffff
xor edi, 0xdbe7d5b8
mov edx, 0xffffffff
xor edx, 0x24020d0e
and eax, 0x24020d0e
mov dword [esi + 0xa8], eax
and ecx, edx
mov ebx, edi
and ebx, 0x24020d0e
mov eax, edx
and eax, 0xdbe7d5b8
mov dword [esi + 0xb0], eax
mov eax, dword [esi + 0xa8]
or eax, ecx
mov ecx, dword [esi + 0xac]
mov dword [esi + 0xb4], eax
mov eax, dword [esi + 0xb0]
or ebx, eax
mov eax, dword [esi + 0xb4]
xor eax, ebx
or ecx, edi
xor ecx, 0xffffffff
or edx, 0x24020d0e
and ecx, edx
or eax, ecx
or eax, 0xe4808b13
imul edi, eax, 0x8305f15d
mov ecx, edi
xor ecx, 0xffffffff
and ecx, 0xed884485
mov edx, 0xffffffff
xor edx, 0xed884485
and edi, edx
mov eax, 0xffffffff
xor eax, 0x127d72f5
and eax, 0xed884485
and edx, 0x127d72f5
or ecx, edi
or eax, edx
xor ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
and eax, edx
mov edx, 0xffffffff
xor edx, 0x7183a130
mov edi, 0xffffffff
xor edi, 0x7183a130
and edx, edi
or eax, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x7183a130
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
xor ecx, ecx
sub ecx, 0xa80fba85
add eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x7e2db8dc
mov edx, 0xffffffff
xor edx, 0x7e2db8dc
and eax, edx
or ecx, eax
mov edx, ecx
xor edx, 0xffffffff
and edx, 0x4e0478d
mov edi, 0xffffffff
xor edi, 0x4e0478d
mov eax, ecx
and eax, edi
imul eax, edx
mov edx, ecx
and edx, 0x4e0478d
or ecx, 0x4e0478d
imul ecx, edx
add ecx, eax
mov eax, ecx
add eax, 1
xor ecx, 0xffffffff
or ecx, 0xb6bfeb38
add ecx, eax
mov eax, ecx
and eax, 0xa02224b4
xor eax, 0xffffffff
add ecx, 0xa02224b4
add ecx, 1
add ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov dword [esi + 0xbc], eax
mov edi, 0xffffffff
xor edi, 0xc43cf21a
mov edx, 0xffffffff
xor edx, 0xd3348354
and eax, 0xd3348354
mov dword [esi + 0xb8], eax
and ecx, edx
mov ebx, edi
and ebx, 0xd3348354
mov eax, edx
and eax, 0xc43cf21a
mov dword [esi + 0xc0], eax
mov eax, dword [esi + 0xb8]
or eax, ecx
mov ecx, dword [esi + 0xbc]
mov dword [esi + 0xc4], eax
mov eax, dword [esi + 0xc0]
or ebx, eax
mov eax, dword [esi + 0xc4]
xor eax, ebx
or ecx, edi
xor ecx, 0xffffffff
or edx, 0xd3348354
and ecx, edx
or eax, ecx
or eax, 0x457253f9
mov ecx, 0xd7f37118
xor edx, edx
div ecx
mov ecx, 0x567dc376
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov dword [esi + 0xcc], eax
mov edi, 0xffffffff
xor edi, 0x3655bb41
mov edx, 0xffffffff
xor edx, 0x56af9fb7
and eax, 0x56af9fb7
mov dword [esi + 0xc8], eax
and ecx, edx
mov ebx, edi
and ebx, 0x56af9fb7
mov eax, edx
and eax, 0x3655bb41
mov dword [esi + 0xd0], eax
mov eax, dword [esi + 0xc8]
or eax, ecx
mov ecx, dword [esi + 0xcc]
mov dword [esi + 0xd4], eax
mov eax, dword [esi + 0xd0]
or ebx, eax
mov eax, dword [esi + 0xd4]
xor eax, ebx
or ecx, edi
xor ecx, 0xffffffff
or edx, 0x56af9fb7
and ecx, edx
or eax, ecx
mov ecx, 0xff951d9c
xor edx, edx
div ecx
sub eax, 0x12939ff0
sub eax, 0x62b7b7a8
add eax, 0x12939ff0
imul ecx, eax, 0x9f0f5003
add ecx, 0xba6dfe11
sub ecx, 0x5d27ff5b
sub ecx, 0xba6dfe11
mov eax, ecx
xor eax, 0xffffffff
and eax, 0x6611ff6d
mov edx, 0xffffffff
xor edx, 0x6611ff6d
and ecx, edx
or eax, ecx
mov ecx, eax
and ecx, ecx
xor ecx, 0xffffffff
and ecx, 0xae24bf4c
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xae24bf4c
mov edi, 0xffffffff
xor edi, 0xae24bf4c
or edx, edi
and eax, edx
xor eax, 0xffffffff
and ecx, eax
xor ecx, 0xffffffff
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x5c003940
or eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x5c003940
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
mov ecx, 0x606f437b
xor edx, edx
div ecx
mov ecx, eax
or ecx, 0xe2f01480
mov edx, ecx
xor edx, 0xffffffff
and edx, 0x681f13e1
mov edi, 0xffffffff
xor edi, 0x681f13e1
mov eax, ecx
and eax, edi
imul eax, edx
mov edx, ecx
and edx, 0x681f13e1
or ecx, 0x681f13e1
imul ecx, edx
add ecx, eax
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, 0x2bc917d8
add eax, ecx
xor edi, edi
sub edi, eax
mov eax, edi
xor eax, 0xffffffff
and eax, 0xa9bcb08e
mov edx, 0xffffffff
xor edx, 0xa9bcb08e
and edi, edx
mov ecx, 0xffffffff
xor ecx, 0x529ecc12
and ecx, 0xa9bcb08e
and edx, 0x529ecc12
or eax, edi
or ecx, edx
xor eax, ecx
and eax, eax
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0xdb30265f
mov edx, 0xffffffff
xor edx, 0xdb30265f
or ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
add eax, 0x108be2cd
sub eax, 0x5074779f
sub eax, 0x108be2cd
mov ecx, eax
and ecx, 0xf9e75b40
xor ecx, 0xffffffff
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xf9e75b40
or eax, edx
and ecx, eax
xor ecx, 0xffffffff
add ecx, 0xf2b59f9a
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0x10ddda1a
or ecx, 0x10ddda1a
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xcf227155
xor edx, edx
div ecx
or eax, 0x8664cab4
mov ecx, eax
and ecx, 0x6c67516f
xor ecx, 0xffffffff
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x6c67516f
or eax, edx
and ecx, eax
xor ecx, 0xffffffff
mov eax, ecx
xor eax, 0xef5b3b8d
xor eax, 0xffffffff
and eax, 0xef5b3b8d
shl eax, 1
sub eax, 0xef5b3b8d
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x11c87b77
mov edx, 0xffffffff
xor edx, 0x11c87b77
or ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, eax
and ecx, 0x844d3397
xor eax, 0x844d3397
or ecx, eax
and ecx, 0x52feaa2c
add ecx, 0xb47fb27c
add ecx, 0xc882fc13
sub ecx, 0xb47fb27c
mov eax, ecx
xor eax, 0xffffffff
and eax, 0x8ee1e2a
mov edx, 0xffffffff
xor edx, 0x8ee1e2a
and ecx, edx
or eax, ecx
xor eax, 0x7cd8742f
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x35d062a4
mov ecx, 0xffffffff
xor ecx, 0xd01ad8a2
or eax, edx
or ecx, 0xd01ad8a2
xor eax, 0xffffffff
and eax, ecx
mov ecx, 0xf7a145c2
xor edx, edx
div ecx
mov ecx, eax
mov eax, dword [esi + 0x1fc]
imul ebx, ecx, 0x54881c2c
mov ecx, ebx
and ecx, 0xa6e2b2aa
shl ecx, 1
add ebx, 0xa6e2b2aa
sub ebx, ecx
sub ebx, 0xba0349bc
and ebx, 0x774f45b9
sub ebx, 0x7736b26a
and ebx, ebx
xor ebx, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0x123925ce
mov edx, 0xffffffff
xor edx, 0x123925ce
or ecx, edx
and ebx, ecx
xor ebx, 0xffffffff
sub ebx, 0xa15236ae
mov edi, ebx
xor edi, 0xffffffff
and edi, 0x55e9e200
mov edx, 0xffffffff
xor edx, 0x55e9e200
and ebx, edx
mov ecx, 0xffffffff
xor ecx, 0xb39594d3
and ecx, 0x55e9e200
and edx, 0xb39594d3
or edi, ebx
or ecx, edx
xor edi, ecx
sub edi, 0xa263b283
mov edx, edi
xor edx, 0xffffffff
and edx, 0xf2287f8a
mov ebx, 0xffffffff
xor ebx, 0xf2287f8a
mov ecx, edi
and ecx, ebx
imul ecx, edx
mov edx, edi
and edx, 0xf2287f8a
or edi, 0xf2287f8a
imul edi, edx
add edi, ecx
mov ecx, 0x2e4a1740
mov edx, 0x443c7ed4
cmp edi, 0x8768785b
cmova ecx, edx
mov dword [eax], ecx
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov dword [eax], 0x21692482
jmp 0x10044e6d
mov eax, dword [0x101e4c78]
mov edx, dword [0x101e4c7c]
xor ecx, ecx
sub ecx, edx
add eax, ecx
mov ecx, 0xdb91f13f
xor edx, edx
div ecx
mov ecx, eax
mov eax, 0xffffffff
xor eax, 0xa3d516c8
xor edx, edx
sub edx, 1
sub eax, edx
sub ecx, eax
mov edx, ecx
xor edx, 0xffffffff
and edx, 0x9fecbe23
mov edi, 0xffffffff
xor edi, 0x9fecbe23
mov eax, ecx
and eax, edi
imul eax, edx
mov edx, ecx
and edx, 0x9fecbe23
or ecx, 0x9fecbe23
imul ecx, edx
add ecx, eax
mov edx, 0xffffffff
xor edx, 0xfb07bc3c
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, eax
and ecx, 0x66ef9cde
xor ecx, 0xffffffff
add eax, 0x66ef9cde
add eax, 1
add eax, ecx
mov ecx, 0x6828fb4b
xor edx, edx
div ecx
mov ecx, 0xcb8beb6d
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xcda28bc2
xor ecx, 0xffffffff
or eax, 0xcda28bc2
and eax, ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0xed55f9f1
add eax, ecx
mov ecx, eax
and ecx, ecx
xor ecx, 0xffffffff
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xe0f4ff77
or ecx, edx
mov edx, 0xe0f4ff77
and edx, 0xe0f4ff77
xor edx, 0xffffffff
xor eax, 0xffffffff
xor edx, 0xffffffff
or eax, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
or ecx, eax
xor ecx, 0x33fc49a4
mov eax, ecx
xor eax, 0xffffffff
and eax, 0x2b4dadff
mov edx, 0xffffffff
xor edx, 0x2b4dadff
and ecx, edx
sub ecx, eax
sub ecx, 0xabcfefcd
mov eax, ecx
xor eax, 0xac95ac46
xor eax, 0xffffffff
or ecx, 0xac95ac46
and ecx, eax
mov eax, 0xffffffff
xor eax, 0xeb52af39
add ecx, eax
add ecx, 1
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, 0xb345c889
add eax, ecx
xor edi, edi
sub edi, eax
and edi, 0x25f3b997
mov eax, edi
xor eax, 0xffffffff
and eax, 0x5dafed42
mov edx, 0xffffffff
xor edx, 0x5dafed42
and edi, edx
mov ecx, 0xffffffff
xor ecx, 0x7fddddb7
and ecx, 0x5dafed42
and edx, 0x7fddddb7
or eax, edi
or ecx, edx
xor eax, ecx
xor eax, 0x1533f8d
mov ecx, eax
and ecx, 0x64b01f5b
shl ecx, 1
xor eax, 0x64b01f5b
add eax, ecx
xor ecx, ecx
sub ecx, 0x6827cbf7
add eax, ecx
mov edi, 0xffffffff
xor edi, 0x89f63543
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x89f63543
or eax, 0x89f63543
imul eax, edx
add eax, ecx
add eax, 0x22601150
imul eax, eax, 0x2510889e
add eax, 0x398a2ba0
sub eax, 0xc6fdf551
sub eax, 0xdb2127f8
add eax, 0xc6fdf551
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x688b7805
add ecx, eax
xor eax, eax
sub eax, ecx
add eax, 0xcef4446b
sub eax, 0x32a603af
sub eax, 0xcef4446b
or eax, 0xd7eb3810
add eax, 0x886c8237
or eax, 0xdbffd56e
mov ecx, 0x31824d26
xor edx, edx
div ecx
sub eax, 0x44744daa
mov ecx, 0xb346c7f1
xor edx, edx
div ecx
mov ecx, eax
add ecx, 0x731ec0b7
mov edx, ecx
xor edx, 0xffffffff
and edx, 0x9801cea9
mov edi, 0xffffffff
xor edi, 0x9801cea9
mov eax, ecx
and eax, edi
imul eax, edx
mov edx, ecx
and edx, 0x9801cea9
or ecx, 0x9801cea9
imul ecx, edx
add ecx, eax
mov edx, 0xffffffff
xor edx, 0xd2249d6d
mov eax, ecx
xor eax, edx
and eax, ecx
or eax, 0xae8c4c98
imul eax, eax, 0x69bd525d
imul ecx, eax, 0x145e8e9
mov eax, ecx
xor eax, 0xffffffff
mov dword [esi + 0x5c], eax
mov edi, 0xffffffff
xor edi, 0x9c5935
mov edx, 0xffffffff
xor edx, 0x3373f62b
and eax, 0x3373f62b
mov dword [esi + 0x58], eax
and ecx, edx
mov ebx, edi
and ebx, 0x3373f62b
mov eax, edx
and eax, 0x9c5935
mov dword [esi + 0x60], eax
mov eax, dword [esi + 0x58]
or eax, ecx
mov ecx, dword [esi + 0x5c]
mov dword [esi + 0x64], eax
mov eax, dword [esi + 0x60]
or ebx, eax
mov eax, dword [esi + 0x64]
xor eax, ebx
or ecx, edi
xor ecx, 0xffffffff
or edx, 0x3373f62b
and ecx, edx
or eax, ecx
imul eax, eax, 0x59c30d5e
and eax, 0x24b504a1
add eax, 0x86083ee0
sub eax, 0xf485f73b
xor eax, 0x3a1d4f62
add eax, 0xcab6a172
add eax, 0x1ed109bd
mov ecx, 0xffffffff
xor ecx, 0xb18e8584
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
sub eax, 0x2235e679
xor eax, 0xb2f9c86e
mov ecx, eax
xor ecx, 0xffffffff
xor eax, 0xffffffff
or ecx, eax
mov eax, 0xffffffff
xor eax, 0xb2215106
mov edx, 0xffffffff
xor edx, 0xb2215106
or eax, edx
and ecx, eax
xor ecx, 0xffffffff
mov eax, ecx
xor eax, 0xffffffff
mov dword [esi + 0x6c], eax
mov edi, 0xffffffff
xor edi, 0x3d4fa4a0
mov edx, 0xffffffff
xor edx, 0x280f56f8
and eax, 0x280f56f8
mov dword [esi + 0x68], eax
and ecx, edx
mov ebx, edi
and ebx, 0x280f56f8
mov eax, edx
and eax, 0x3d4fa4a0
mov dword [esi + 0x70], eax
mov eax, dword [esi + 0x68]
or eax, ecx
mov ecx, dword [esi + 0x6c]
mov dword [esi + 0x74], eax
mov eax, dword [esi + 0x70]
or ebx, eax
mov eax, dword [esi + 0x74]
xor eax, ebx
or ecx, edi
xor ecx, 0xffffffff
or edx, 0x280f56f8
and ecx, edx
or eax, ecx
imul ecx, eax, 0x24cb1b62
add ecx, 0x44bcfad8
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
and eax, edx
mov edx, 0xffffffff
xor edx, 0x3269e712
mov edi, 0xffffffff
xor edi, 0x3269e712
and edx, edi
or eax, edx
xor eax, 0xffffffff
or ecx, 0x3269e712
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0x6d913851
xor edx, edx
div ecx
mov ecx, eax
mov eax, dword [esi + 0x1fc]
mov edi, ecx
and edi, 0x7907aa47
xor ecx, 0x7907aa47
or edi, ecx
mov ecx, edi
xor ecx, 0x3a75495b
xor ecx, 0xffffffff
and ecx, 0x3a75495b
shl ecx, 1
sub ecx, 0x3a75495b
sub edi, ecx
and edi, edi
xor edi, 0xffffffff
mov ecx, 0xa925c4e9
and ecx, 0xa925c4e9
xor ecx, 0xffffffff
xor edi, 0xffffffff
xor ecx, 0xffffffff
or edi, ecx
mov ecx, 0x213c0e6
mov edx, 0x4bd5f99c
cmp edi, 0x52ddf947
cmovb ecx, edx
mov dword [eax], ecx
jmp 0x10044e6d
mov eax, dword [0x101e4c80]
sub eax, dword [0x101e4c84]
sub eax, 0x32a87245
add eax, 0x139c172a
add eax, 0x32a87245
mov ecx, 0x6c1f9d7e
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0x7d55df9
mov edx, 0xffffffff
xor edx, 0xff757708
mov eax, ecx
xor eax, edx
and eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x72814bb1
mov edi, 0xffffffff
xor edi, 0x72814bb1
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0x72814bb1
or eax, 0x72814bb1
imul eax, edx
add eax, ecx
mov ecx, 0xca130239
xor edx, edx
div ecx
mov ecx, 0x211b634d
xor edx, edx
div ecx
or eax, 0x1a861d3f
xor ecx, ecx
sub ecx, 0x936f9661
add eax, ecx
mov ecx, 0x6bee3a05
xor edx, edx
div ecx
sub eax, 0xb4fbf19
add eax, 0x59310fea
add eax, 0xb4fbf19
mov ecx, 0xbe92b340
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
and eax, edx
mov edx, 0xffffffff
xor edx, 0xb8eeaf47
mov edi, 0xffffffff
xor edi, 0xb8eeaf47
and edx, edi
or eax, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xb8eeaf47
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov edi, 0xffffffff
xor edi, 0xcaa1bd94
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xcaa1bd94
or eax, 0xcaa1bd94
imul eax, edx
add eax, ecx
xor eax, 0x18d803e6
xor eax, 0x356149fa
xor ecx, ecx
sub ecx, 0xdcf49980
add eax, ecx
imul eax, eax, 0xf838ee75
mov ecx, 0x334968ae
xor edx, edx
div ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0xf263c2bd
mov edi, 0xffffffff
xor edi, 0xf263c2bd
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0xf263c2bd
or eax, 0xf263c2bd
imul eax, edx
add eax, ecx
add eax, 0x81aa290e
and eax, 0xc7242657
mov ecx, eax
and ecx, 0x9dfdb529
xor ecx, 0xffffffff
add eax, 0x9dfdb529
add eax, 1
add eax, ecx
mov ecx, 0x12d0cd35
xor edx, edx
div ecx
mov ecx, eax
mov edx, ecx
xor edx, 0xffffffff
and edx, 0x51d78061
mov edi, 0xffffffff
xor edi, 0x51d78061
mov eax, ecx
and eax, edi
imul eax, edx
mov edx, ecx
and edx, 0x51d78061
or ecx, 0x51d78061
imul ecx, edx
add ecx, eax
and ecx, 0xe0e28743
sub ecx, 0xa5c6b2f2
mov edi, 0xffffffff
xor edi, 0xbb7b7e80
mov edx, ecx
and edx, edi
mov eax, ecx
or eax, edi
xor eax, 0xffffffff
imul eax, edx
mov edx, ecx
and edx, 0xbb7b7e80
or ecx, 0xbb7b7e80
imul ecx, edx
add ecx, eax
mov edx, ecx
xor edx, 0xffffffff
and edx, 0xdca351d4
mov edi, 0xffffffff
xor edi, 0xdca351d4
mov eax, ecx
and eax, edi
imul eax, edx
mov edx, ecx
and edx, 0xdca351d4
or ecx, 0xdca351d4
imul ecx, edx
add ecx, eax
mov edx, 0xffffffff
xor edx, 0x4d94dca6
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, 0x3542070c
xor edx, edx
div ecx
mov ecx, 0x5ef755b
xor edx, edx
div ecx
add eax, 0xa62f3c5e
sub eax, 0xe3ddfd29
sub eax, 0xa62f3c5e
sub eax, 0xd5fc8216
mov ecx, 0x6be8d7fc
xor edx, edx
div ecx
mov ecx, 0xffffffff
xor ecx, 0x463e8511
add eax, ecx
add eax, 1
and eax, 0xb93d27b6
or eax, 0x55d3210c
xor eax, 0xa267dbdf
add eax, 0x3ce7c879
sub eax, 0xa120c55
sub eax, 0x3ce7c879
imul eax, eax, 0x5a2ab988
xor eax, 0x4948f505
add eax, 0x997f7f3e
mov ecx, 0x8da36da2
xor edx, edx
div ecx
xor eax, 0x7fa65715
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0xf2fad86d
add ecx, eax
xor eax, eax
sub eax, ecx
add eax, 0x771cc1ec
and eax, 0x7461b79c
and eax, 0x881f428c
xor ecx, ecx
sub ecx, 0x1b3b1a23
add eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0xb9ae404a
mov edi, 0xffffffff
xor edi, 0xb9ae404a
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0xb9ae404a
or eax, 0xb9ae404a
imul eax, edx
add eax, ecx
mov edi, 0xffffffff
xor edi, 0x94a70026
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x94a70026
or eax, 0x94a70026
imul eax, edx
add eax, ecx
mov ecx, 0x17d71b19
xor edx, edx
div ecx
and eax, eax
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0x3757ea10
mov edx, 0xffffffff
xor edx, 0x3757ea10
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
mov edx, eax
xor edx, 0xffffffff
and edx, 0x593f36eb
mov edi, 0xffffffff
xor edi, 0x593f36eb
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0x593f36eb
or eax, 0x593f36eb
imul eax, edx
add eax, ecx
mov ecx, 0x6f761bd8
xor edx, edx
div ecx
sub eax, 0x37f04fc8
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x1c1865f4
mov ecx, 0xffffffff
xor ecx, 0xc684ab7a
or eax, edx
or ecx, 0xc684ab7a
xor eax, 0xffffffff
and eax, ecx
mov ecx, 0x60be4750
xor edx, edx
div ecx
mov edi, eax
mov eax, dword [esi + 0x1fc]
and edi, 0xae6460f9
mov ecx, 0x4bd5f99c
mov edx, 0x92aa3587
cmp edi, 0xcacf122e
cmovb ecx, edx
mov dword [eax], ecx
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov bl, byte [esi + 0x9b]
mov ecx, 0x82a71baf
mov edx, 0x69552d12
test bl, 1
cmovne ecx, edx
mov dword [eax], ecx
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov dword [eax], 0xb0654015
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov ecx, dword [esi + 0x1c8]
mov edx, dword [esi + 0x54]
mov edi, dword [esi + 0x1c4]
mov ebx, dword [edi]
xor edi, edi
sub edi, edx
xor edx, edx
sub edx, ebx
add edi, edx
xor edx, edx
sub edx, edi
mov dword [ecx], edx
mov dword [eax], 0xe7ef87d6
jmp 0x10044e6d
mov eax, dword [esi + 0x1c8]
mov ecx, dword [esi + 0x194]
mov edx, dword [ecx]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.101aeca0
add esp, 8
mov edi, eax
mov eax, dword [esi + 0x1fc]
mov ecx, 0xd97b594b
mov edx, 0x86517ade
cmp edi, 0
cmovne ecx, edx
mov dword [eax], ecx
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov ecx, dword [esi + 0x1d4]
mov edx, dword [ecx]
mov dword [esi + 0x50], edx
mov ecx, dword [ecx + 4]
mov dword [eax], 0x17214ace
jmp 0x10044e6d
mov ecx, dword [0x101e4c98]
mov edx, dword [0x101e4c9c]
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, edx
xor ecx, 0xffffffff
xor edx, 0xffffffff
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
imul eax, eax, 0x994d6061
xor eax, 0x85916d49
imul eax, eax, 0x785d122a
and eax, 0xf76a048e
mov ecx, 0xfb372583
xor edx, edx
div ecx
mov ecx, 0xe16a9914
xor edx, edx
div ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0xdb734ade
add eax, ecx
xor eax, 0xf7447a2d
imul eax, eax, 0xe3015f10
sub eax, 0x165ddbc0
add eax, 0xccb5d512
add eax, 0x165ddbc0
imul eax, eax, 0x9b23ba56
sub eax, 0x49628434
mov ecx, eax
and ecx, 0x25b24143
shl ecx, 1
xor eax, 0x25b24143
add eax, ecx
xor eax, 0x4ca4ab95
mov ecx, eax
and ecx, 0xf425f539
shl ecx, 1
add eax, 0xf425f539
sub eax, ecx
xor eax, 0x61d85f4d
imul ecx, eax, 0x7580bf8c
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, 0x2c26c1b7
add eax, ecx
xor ecx, ecx
sub ecx, eax
or ecx, 0x51e91d5b
mov eax, ecx
and eax, 0x3c735c6a
xor ecx, 0x3c735c6a
or eax, ecx
xor ecx, ecx
sub ecx, 0x8bf1211b
sub eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xe9f26554
mov ecx, 0xffffffff
xor ecx, 0x50a6f896
or eax, edx
or ecx, 0x50a6f896
xor eax, 0xffffffff
and eax, ecx
mov ecx, 0x3b00da22
xor edx, edx
div ecx
imul eax, eax, 0xf67fe89b
mov ecx, 0x19fca8a1
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x392f5f09
and ecx, edx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x392f5f09
and eax, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
and ecx, eax
and ecx, 0xdd65c9d7
mov edi, 0xffffffff
xor edi, 0xee53a323
mov edx, ecx
and edx, edi
mov eax, ecx
or eax, edi
xor eax, 0xffffffff
imul eax, edx
mov edx, ecx
and edx, 0xee53a323
or ecx, 0xee53a323
imul ecx, edx
add ecx, eax
mov eax, ecx
xor eax, 0xffffffff
and eax, 0x41bfecf6
mov edx, 0xffffffff
xor edx, 0x41bfecf6
and ecx, edx
or eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xc2e3d1dd
or ecx, edx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xc2e3d1dd
or eax, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
or ecx, eax
add ecx, 0x8eb87540
add ecx, 0xf26d829
sub ecx, 0x8eb87540
mov eax, 0xffffffff
xor eax, 0x2fc42aa6
add ecx, eax
add ecx, 1
add ecx, 0xca5ffd79
add ecx, 0x34e658f7
mov edx, 0xffffffff
xor edx, 0x6c7ca166
mov eax, ecx
and eax, edx
mov edx, ecx
xor edx, 0x6c7ca166
add ecx, edx
sub ecx, eax
xor eax, eax
sub eax, 0xb3843164
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xf3da648c
or eax, edx
and ecx, 0xf3da648c
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0xffffffff
and eax, 0x72a5748c
sub eax, 0x8ed67a9a
add eax, 0xe3532d28
add eax, 0x8ed67a9a
sub eax, 0x6951e407
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x33e35b90
mov ecx, 0xffffffff
xor ecx, 0x3655cb27
or eax, edx
or ecx, 0x3655cb27
xor eax, 0xffffffff
and eax, ecx
mov ecx, 0x300c042a
xor edx, edx
div ecx
xor eax, 0x58e1b27b
sub eax, 0x556c6b85
add eax, 0xc724456
or eax, 0x49d02287
mov ecx, 0xffffffff
xor ecx, 0xeafe6618
add eax, ecx
add eax, 1
mov ecx, 0xac06fe2
xor edx, edx
div ecx
sub eax, 0x5ce54dbc
mov edx, eax
xor edx, 0xffffffff
and edx, 0xa0bf46f6
mov edi, 0xffffffff
xor edi, 0xa0bf46f6
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0xa0bf46f6
or eax, 0xa0bf46f6
imul eax, edx
add eax, ecx
imul eax, eax, 0x6a47b27f
and eax, 0x83290753
sub eax, 0x31975863
xor eax, 0xfacb2b43
mov ecx, 0x11f1225c
xor edx, edx
div ecx
and eax, 0xb62a8488
mov ecx, 0x510aaed
xor edx, edx
div ecx
mov ecx, eax
mov eax, dword [esi + 0x1fc]
and ecx, ecx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x54cae74e
mov edi, 0xffffffff
xor edi, 0x54cae74e
or edx, edi
and ecx, edx
xor ecx, 0xffffffff
or ecx, 0x796d8c45
imul edi, ecx, 0xf6716985
mov ecx, 0xf1f17a49
mov edx, 0x3ec38cc1
cmp edi, 0x31db6943
cmove ecx, edx
mov dword [eax], ecx
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov ecx, dword [esi + 0x1bc]
mov edx, dword [esi + 0x50]
mov edi, 0x395141ea
mov dword [esi + 0x48], edx
mov ecx, dword [ecx]
mov dword [esi + 0x4c], ecx
mov ecx, 0x3ec38cc1
mov edx, 0x51c1d305
cmp edi, 0xfd12f9ff
cmovbe ecx, edx
mov dword [eax], ecx
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov dword [eax], 0x82a71baf
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov dword [eax], 0x8260d21a
jmp 0x10044e6d
mov eax, dword [0x101e4ca8]
sub eax, dword [0x101e4cac]
mov ecx, 0x2522d26a
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0x84950ae0
xor ecx, 0xffffffff
or eax, 0x84950ae0
and eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x8fff44d3
and ecx, edx
or eax, 0x8fff44d3
xor eax, 0xffffffff
or ecx, eax
xor ecx, 0xffffffff
or ecx, 0x9d6cb0de
or ecx, 0xf8a5b4d5
xor eax, eax
sub eax, 0x6bef9c82
sub ecx, eax
mov eax, ecx
and eax, 0xb8a6b060
xor ecx, 0xb8a6b060
or eax, ecx
add eax, 0xc1495654
mov ecx, 0x7d115a0f
xor edx, edx
div ecx
add eax, 0x26db4666
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0xeb330da7
mov edx, 0xffffffff
xor edx, 0xeb330da7
and eax, edx
or ecx, eax
and ecx, 0x98f97daf
mov edx, 0xffffffff
xor edx, 0x96a26d55
mov eax, ecx
xor eax, edx
and eax, ecx
and eax, 0xe0bbd865
imul eax, eax, 0x95ca068d
mov edx, eax
xor edx, 0xffffffff
and edx, 0x9fc3ba79
mov edi, 0xffffffff
xor edi, 0x9fc3ba79
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0x9fc3ba79
or eax, 0x9fc3ba79
imul eax, edx
add eax, ecx
sub eax, 0x40157672
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x8ac19de2
mov ecx, 0xffffffff
xor ecx, 0xa4fa8e5c
or eax, edx
or ecx, 0xa4fa8e5c
xor eax, 0xffffffff
and eax, ecx
or eax, 0x8cf61d84
mov edx, 0xffffffff
xor edx, 0xbf37788b
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0xbf37788b
add eax, edx
sub eax, ecx
mov ecx, 0xf7920160
xor edx, edx
div ecx
sub eax, 0x31f1811c
mov edx, eax
xor edx, 0xffffffff
and edx, 0xe86385b
mov edi, 0xffffffff
xor edi, 0xe86385b
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0xe86385b
or eax, 0xe86385b
imul eax, edx
add eax, ecx
mov ecx, 0x2eef9f6e
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
and eax, 0xa726baf4
xor ecx, 0xa726baf4
or eax, ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0x60e0ca7
add eax, ecx
imul ecx, eax, 0xfeb19895
add ecx, 0x492aa644
sub ecx, 0xdddc42a4
sub ecx, 0x492aa644
and ecx, 0xe4b14235
mov edx, 0xffffffff
xor edx, 0xb9c9edbe
mov eax, ecx
xor eax, edx
and eax, ecx
add eax, 0x9642be76
add eax, 0xe6fbae3c
sub eax, 0x9642be76
mov ecx, 0x216a306b
xor edx, edx
div ecx
imul ecx, eax, 0x9ca43206
mov eax, ecx
xor eax, 0xffffffff
mov dword [esi + 0x3c], eax
mov edi, 0xffffffff
xor edi, 0xa36a206c
mov edx, 0xffffffff
xor edx, 0xda3e44a5
and eax, 0xda3e44a5
mov dword [esi + 0x38], eax
and ecx, edx
mov ebx, edi
and ebx, 0xda3e44a5
mov eax, edx
and eax, 0xa36a206c
mov dword [esi + 0x40], eax
mov eax, dword [esi + 0x38]
or eax, ecx
mov ecx, dword [esi + 0x3c]
mov dword [esi + 0x44], eax
mov eax, dword [esi + 0x40]
or ebx, eax
mov eax, dword [esi + 0x44]
xor eax, ebx
or ecx, edi
xor ecx, 0xffffffff
or edx, 0xda3e44a5
and ecx, edx
or eax, ecx
mov ecx, 0x9b71a133
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
or eax, 0xe384424a
xor eax, 0xffffffff
or ecx, 0xe384424a
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
imul ecx, eax, 0xc8871e40
sub ecx, 0xad0029f0
mov eax, ecx
and eax, 0xd217650c
or ecx, 0xd217650c
add eax, ecx
mov ecx, 0x2cb0fe43
xor edx, edx
div ecx
sub eax, 0x1f3d6a00
sub eax, 0x37be3b8a
mov ecx, 0x6be03fe3
xor edx, edx
div ecx
mov edx, eax
mov eax, dword [esi + 0x1fc]
mov ecx, edx
xor ecx, 0xffffffff
xor edx, 0xffffffff
and ecx, edx
mov edx, 0x42bc3278
or edx, 0x42bc3278
xor edx, 0xffffffff
xor ecx, 0xffffffff
xor edx, 0xffffffff
and ecx, edx
mov edx, ecx
xor edx, 0x376b39c2
xor edx, 0xffffffff
or ecx, 0x376b39c2
and ecx, edx
imul edx, ecx, 0x2a46e94f
or edx, 0xe69f1a56
sub edx, 0x410d0a8
or edx, edx
xor edx, 0xffffffff
mov ecx, 0x827a7373
or ecx, 0x827a7373
xor ecx, 0xffffffff
xor edx, 0xffffffff
xor ecx, 0xffffffff
and edx, ecx
xor ecx, ecx
sub ecx, edx
xor edx, edx
sub edx, 0xa0836424
add ecx, edx
xor edx, edx
sub edx, ecx
and edx, 0xa8561f25
mov ebx, 0xffffffff
xor ebx, 0x73deca3b
mov edi, edx
and edi, ebx
mov ecx, edx
or ecx, ebx
xor ecx, 0xffffffff
imul ecx, edi
mov edi, edx
and edi, 0x73deca3b
or edx, 0x73deca3b
imul edx, edi
add edx, ecx
or edx, 0x7dc5bc6
and edx, 0x45c8d73d
mov edi, edx
xor edi, 0xffffffff
and edi, 0xee6609b8
mov ebx, 0xffffffff
xor ebx, 0xee6609b8
mov ecx, edx
and ecx, ebx
imul ecx, edi
mov edi, edx
and edi, 0xee6609b8
or edx, 0xee6609b8
imul edx, edi
add edx, ecx
and edx, 0x19a51485
xor edx, 0xb2e43dc3
mov ecx, edx
and ecx, 0xa50032bf
xor edx, 0xa50032bf
or ecx, edx
mov edi, ecx
xor edi, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
and edi, edx
mov edx, 0x6c743571
or edx, 0x6c743571
xor edx, 0xffffffff
or edi, edx
xor edi, 0xffffffff
or ecx, 0x6c743571
xor ecx, 0xffffffff
xor edi, 0xffffffff
xor ecx, 0xffffffff
and edi, ecx
mov edx, edi
xor edx, 0xffffffff
and edx, 0x4a29abb4
mov ebx, 0xffffffff
xor ebx, 0x4a29abb4
mov ecx, edi
and ecx, ebx
imul ecx, edx
mov edx, edi
and edx, 0x4a29abb4
or edi, 0x4a29abb4
imul edi, edx
add edi, ecx
mov ecx, 0x17824847
mov edx, 0x6f64f9c3
cmp edi, 0xf6b0ff39
cmovb ecx, edx
mov dword [eax], ecx
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov ecx, dword [esi + 0x1c0]
mov edx, dword [esi + 0x34]
mov dword [ecx], edx
mov dword [eax], 0xb3e81679
jmp 0x10044e6d
mov eax, dword [0x101e4cb8]
add eax, dword [0x101e4cbc]
xor eax, 0xf8d1c2fd
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xef066927
mov ecx, 0xffffffff
xor ecx, 0xa75e3a36
or eax, edx
or ecx, 0xa75e3a36
xor eax, 0xffffffff
and eax, ecx
mov edx, 0xffffffff
xor edx, 0x8072fc2f
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0x8072fc2f
add eax, edx
sub eax, ecx
xor ecx, ecx
sub ecx, 0xb43699ff
sub eax, ecx
add eax, 0xfd6c9950
mov ecx, 0xcafc4798
xor edx, edx
div ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0xb866a3e9
add eax, ecx
mov ecx, 0xe574d7a8
xor edx, edx
div ecx
mov ecx, 0xae4f4a55
xor edx, edx
div ecx
mov ecx, 0xfb0ddddd
xor edx, edx
div ecx
mov ecx, eax
sub ecx, 0xa5166e3a
sub ecx, 0xc67834ed
add ecx, 0xa5166e3a
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x92c5d51e
mov edx, 0xffffffff
xor edx, 0x92c5d51e
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
or eax, 0xeb4a684
add eax, 0xf5aa6d9e
imul eax, eax, 0x8209c719
add eax, 0xa512d928
imul ecx, eax, 0x4aca429
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
and eax, edx
mov edx, 0xffffffff
xor edx, 0x6d12f1b5
mov edi, 0xffffffff
xor edi, 0x6d12f1b5
and edx, edi
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x6d12f1b5
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
add eax, 0x51e1449d
sub eax, 0x19e6a4be
sub eax, 0x51e1449d
mov ecx, eax
xor ecx, 0xffffffff
xor eax, 0xffffffff
or ecx, eax
mov eax, 0x44654712
and eax, 0x44654712
xor eax, 0xffffffff
xor ecx, 0xffffffff
xor eax, 0xffffffff
or ecx, eax
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, 0x5c51a7ca
add eax, ecx
xor ecx, ecx
sub ecx, eax
xor ecx, 0x5cd5cdf0
add ecx, 0xc6ac1c56
mov eax, ecx
and eax, 0x4b309c69
shl eax, 1
xor ecx, 0x4b309c69
add ecx, eax
mov eax, ecx
or eax, eax
xor eax, 0xffffffff
mov edx, 0xf52c3f4d
or edx, 0xf52c3f4d
xor edx, 0xffffffff
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xf52c3f4d
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov ecx, eax
and ecx, 0xd31c7a80
xor ecx, 0xffffffff
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xd31c7a80
or eax, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
or ecx, eax
mov eax, ecx
or eax, 0x57e246d
xor eax, 0xffffffff
or ecx, 0x57e246d
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x18f978f5
mov edx, 0xffffffff
xor edx, 0x18f978f5
and eax, edx
sub eax, ecx
sub eax, 0x78934fb4
mov ecx, eax
xor ecx, 0x7beac7b0
mov edx, 0xffffffff
xor edx, 0x7beac7b0
and eax, edx
shl eax, 1
sub eax, ecx
mov ecx, 0x896ab823
xor edx, edx
div ecx
mov ecx, 0xda536bcd
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x6888a9ff
mov edx, 0xffffffff
xor edx, 0x6888a9ff
and eax, edx
sub eax, ecx
mov ecx, 0xc2f380b
xor edx, edx
div ecx
mov ecx, 0xac3751d0
xor edx, edx
div ecx
mov ecx, 0xfe1c1b9e
xor edx, edx
div ecx
xor ecx, ecx
sub ecx, 0x574ae963
sub eax, ecx
mov ecx, eax
xor ecx, 0x8092a7a7
mov edx, 0xffffffff
xor edx, 0x8092a7a7
and eax, edx
shl eax, 1
sub eax, ecx
mov edi, 0xffffffff
xor edi, 0x7fab2be1
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x7fab2be1
or eax, 0x7fab2be1
imul eax, edx
add eax, ecx
sub eax, 0x7836442f
mov ecx, 0xf6eb62d3
xor edx, edx
div ecx
mov edi, eax
mov eax, edi
xor eax, 0xffffffff
and eax, 0x91fac94
mov edx, 0xffffffff
xor edx, 0x91fac94
and edi, edx
mov ecx, 0xffffffff
xor ecx, 0x43605632
and ecx, 0x91fac94
and edx, 0x43605632
or eax, edi
or ecx, edx
xor eax, ecx
add eax, 0xe5358c01
xor ecx, ecx
sub ecx, 0x758b4a
add eax, ecx
imul eax, eax, 0xd431bd10
mov edx, eax
xor edx, 0xffffffff
and edx, 0x7ce8a346
mov edi, 0xffffffff
xor edi, 0x7ce8a346
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0x7ce8a346
or eax, 0x7ce8a346
imul eax, edx
add eax, ecx
mov ecx, eax
xor ecx, 0x481ef96f
xor ecx, 0xffffffff
or eax, 0x481ef96f
and eax, ecx
and eax, 0x64c696d9
xor ecx, ecx
sub ecx, 0x528a343c
sub eax, ecx
or eax, 0x71650b7
mov ecx, 0x60115d5f
xor edx, edx
div ecx
mov ecx, eax
mov eax, dword [esi + 0x1fc]
add ecx, 0x9cb4f8b
add ecx, 0x5dda7c72
sub ecx, 0x9cb4f8b
or ecx, 0x5e1a983f
and ecx, 0x72857bb0
mov ebx, 0xffffffff
xor ebx, 0x6d3971a2
mov edi, ecx
and edi, ebx
mov edx, ecx
or edx, ebx
xor edx, 0xffffffff
imul edx, edi
mov edi, ecx
and edi, 0x6d3971a2
or ecx, 0x6d3971a2
imul ecx, edi
add ecx, edx
sub ecx, 0x404a1397
imul edi, ecx, 0xb8270136
add edi, 0xe609de7a
and edi, 0xfc11665
xor edi, 0xfe7809b0
mov ecx, 0xbf4d838
mov edx, 0xe37c05d7
cmp edi, 0xbf90847d
cmovne ecx, edx
mov dword [eax], ecx
jmp 0x10044e6d
mov eax, dword [0x101e4cc0]
mov edx, dword [0x101e4cc4]
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, edx
add eax, ecx
xor eax, 0x53d9efde
mov edi, eax
and edi, 0x8cd89194
xor edi, 0xffffffff
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0x8cd89194
or eax, ecx
and edi, eax
xor edi, 0xffffffff
mov eax, edi
xor eax, 0xffffffff
and eax, 0x42944b6d
mov edx, 0xffffffff
xor edx, 0x42944b6d
and edi, edx
mov ecx, 0xffffffff
xor ecx, 0xa23f9ab2
and ecx, 0x42944b6d
and edx, 0xa23f9ab2
or eax, edi
or ecx, edx
xor eax, ecx
imul ecx, eax, 0x26d9c58f
xor ecx, 0xd92ba156
mov edx, 0xffffffff
xor edx, 0x292c4152
mov eax, ecx
xor eax, edx
and eax, ecx
sub eax, 0x3e02aefd
sub eax, 0xf68c1732
add eax, 0x3e02aefd
mov ecx, eax
and ecx, 0x7addb4f1
shl ecx, 1
add eax, 0x7addb4f1
sub eax, ecx
mov ecx, 0x78ffb88f
xor edx, edx
div ecx
or eax, 0xdbddaf5d
mov ecx, 0xf4c6301b
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xffffffff
mov dword [esi + 0x14], ecx
mov edi, 0xffffffff
xor edi, 0xb404f604
mov edx, 0xffffffff
xor edx, 0x5fefd1e4
and ecx, 0x5fefd1e4
and eax, edx
mov dword [esi + 0xc], eax
mov ebx, edi
and ebx, 0x5fefd1e4
mov eax, edx
and eax, 0xb404f604
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0xc]
or ecx, eax
mov eax, dword [esi + 0x10]
or ebx, eax
mov eax, dword [esi + 0x14]
xor ecx, ebx
or eax, edi
xor eax, 0xffffffff
or edx, 0x5fefd1e4
and eax, edx
or ecx, eax
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xab567859
mov eax, 0xffffffff
xor eax, 0x76ed8b99
or ecx, edx
or eax, 0x76ed8b99
xor ecx, 0xffffffff
and ecx, eax
add ecx, 0xe2f15fc3
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
and eax, edx
mov edx, 0xffffffff
xor edx, 0xda7acf94
mov edi, 0xffffffff
xor edi, 0xda7acf94
and edx, edi
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xda7acf94
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
imul eax, eax, 0x747c7d15
mov ecx, 0xbcdfacb0
xor edx, edx
div ecx
and eax, 0xc8af683b
mov ecx, 0x5a8aaf82
xor edx, edx
div ecx
mov edi, 0xffffffff
xor edi, 0x47d50c5a
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x47d50c5a
or eax, 0x47d50c5a
imul eax, edx
add eax, ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0xf6cc9e1f
add eax, ecx
and eax, 0xabbe63f9
mov ecx, eax
and ecx, ecx
xor ecx, 0xffffffff
and ecx, 0x814d14b2
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x814d14b2
mov edi, 0xffffffff
xor edi, 0x814d14b2
or edx, edi
xor eax, 0xffffffff
xor edx, 0xffffffff
or eax, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
or ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov dword [esi + 0x1c], eax
mov edi, 0xffffffff
xor edi, 0xe2fd93ca
mov edx, 0xffffffff
xor edx, 0x2294f7af
and eax, 0x2294f7af
mov dword [esi + 0x18], eax
and ecx, edx
mov ebx, edi
and ebx, 0x2294f7af
mov eax, edx
and eax, 0xe2fd93ca
mov dword [esi + 0x20], eax
mov eax, dword [esi + 0x18]
or eax, ecx
mov ecx, dword [esi + 0x1c]
mov dword [esi + 0x24], eax
mov eax, dword [esi + 0x20]
or ebx, eax
mov eax, dword [esi + 0x24]
xor eax, ebx
or ecx, edi
xor ecx, 0xffffffff
or edx, 0x2294f7af
and ecx, edx
or eax, ecx
or eax, 0x8c416056
or eax, 0x48f4eb19
xor eax, 0x15e37b18
sub eax, 0x5993524d
mov ecx, 0xfebfc87
xor edx, edx
div ecx
mov edi, eax
mov eax, edi
xor eax, 0xffffffff
and eax, 0x3428e4a9
mov edx, 0xffffffff
xor edx, 0x3428e4a9
and edi, edx
mov ecx, 0xffffffff
xor ecx, 0x37b827e5
and ecx, 0x3428e4a9
and edx, 0x37b827e5
or eax, edi
or ecx, edx
xor eax, ecx
mov ecx, 0x80febc20
xor edx, edx
div ecx
imul ecx, eax, 0x5e274b27
or ecx, 0x19706203
mov eax, ecx
xor eax, 0xffffffff
and eax, 0x620793c9
mov edx, 0xffffffff
xor edx, 0x620793c9
and ecx, edx
or eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x2fbba1c1
add eax, ecx
add eax, 1
imul ecx, eax, 0xad7a9203
and ecx, 0x2b49bd15
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xe0948001
and eax, edx
or ecx, 0xe0948001
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov edi, 0xffffffff
xor edi, 0xcab4df33
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xcab4df33
or eax, 0xcab4df33
imul eax, edx
add eax, ecx
sub eax, 0x73a08730
sub eax, 0x1e7f7158
add eax, 0x73a08730
mov ecx, eax
and ecx, 0x88d55f52
xor ecx, 0xffffffff
add eax, 0x88d55f52
add eax, 1
add eax, ecx
mov ecx, 0x29d79893
xor edx, edx
div ecx
or eax, 0x30927494
mov ecx, 0x35812e6
xor edx, edx
div ecx
and eax, 0x9158546d
mov ecx, eax
and ecx, 0x6236d34e
shl ecx, 1
xor eax, 0x6236d34e
add eax, ecx
mov ecx, 0xc9d38c13
xor edx, edx
div ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0xe8c44858
mov edi, 0xffffffff
xor edi, 0xe8c44858
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0xe8c44858
or eax, 0xe8c44858
imul eax, edx
add eax, ecx
sub eax, 0x9eabb9c0
mov ecx, 0x593323d7
xor edx, edx
div ecx
mov edi, 0xffffffff
xor edi, 0x49e34063
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x49e34063
or eax, 0x49e34063
imul eax, edx
add eax, ecx
add eax, 0xce44141f
sub eax, 0x5cbd36d3
sub eax, 0x32d85a91
add eax, 0x5cbd36d3
add eax, 0x97897618
or eax, 0xc74d6e11
xor ecx, ecx
sub ecx, 0x9f18caed
add eax, ecx
mov ecx, 0x5f1e7b85
xor edx, edx
div ecx
mov ecx, eax
mov eax, dword [esi + 0x1fc]
mov edi, ecx
xor edi, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x88fb6ca8
or edi, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x88fb6ca8
or ecx, edx
xor edi, 0xffffffff
xor ecx, 0xffffffff
or edi, ecx
mov ecx, 0xffffffff
xor ecx, 0x3083f640
add edi, ecx
add edi, 1
and edi, 0x8df1c588
mov ecx, 0x1dbccd87
mov edx, 0xbf4d838
cmp edi, 0xb0b47210
cmovae ecx, edx
mov dword [eax], ecx
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov dword [eax], 0x156b2a6d
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov dword [eax], 0xa8d23be2
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov ecx, dword [esi + 0x1b8]
mov ecx, dword [ecx]
mov dword [esi + 8], ecx
mov dword [eax], 0xd6d44ec0
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov ecx, dword [esi + 0x1b8]
mov edx, dword [esi + 8]
mov edi, 0xffffffff
xor edi, 1
xor ebx, ebx
sub ebx, 1
sub edi, ebx
sub edx, edi
mov dword [ecx], edx
mov dword [eax], 0xab9be60e
jmp 0x10044e6d
mov ecx, dword [0x101e4cc8]
imul ecx, dword [0x101e4ccc]
sub ecx, 0x6179cb4c
mov eax, ecx
and eax, 0xe4e05bf4
or ecx, 0xe4e05bf4
add eax, ecx
mov ecx, 0x47b41453
xor edx, edx
div ecx
add eax, 0x4f5bc29
xor eax, 0x802171cd
mov ecx, 0xd4a40bb8
xor edx, edx
div ecx
add eax, 0xf09ac710
mov ecx, eax
xor ecx, 0xd5ef9cd4
xor ecx, 0xffffffff
or eax, 0xd5ef9cd4
and eax, ecx
mov ecx, 0x7248b010
xor edx, edx
div ecx
and eax, 0xe6b5ae7d
imul ecx, eax, 0xae986d95
add ecx, 0x5d3e6d07
add ecx, 0x2228bd28
mov eax, ecx
and eax, 0xb82c6455
xor ecx, 0xb82c6455
or eax, ecx
or eax, 0xa64df3b4
sub eax, 0xef7e170
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x9c048bc6
add ecx, eax
xor eax, eax
sub eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xb200efc3
add eax, ecx
add eax, 1
mov edi, 0xffffffff
xor edi, 0x5f3b8df9
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x5f3b8df9
or eax, 0x5f3b8df9
imul eax, edx
add eax, ecx
and eax, 0xa5ba9d7e
xor eax, 0x182ce1e8
mov ecx, eax
and ecx, 0x810a8c0d
shl ecx, 1
xor eax, 0x810a8c0d
add eax, ecx
mov ecx, 0xf5bc9e4
xor edx, edx
div ecx
sub eax, 0x833f1d66
add eax, 0x540ffc56
add eax, 0x833f1d66
mov ecx, 0x723dcfb9
xor edx, edx
div ecx
xor eax, 0xf18df6cb
or eax, 0x5cd063ff
sub eax, 0x1e2491cc
mov ecx, eax
xor ecx, 0x362d8d75
mov edx, 0xffffffff
xor edx, 0x362d8d75
and eax, edx
shl eax, 1
sub eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x6868afcd
add eax, ecx
add eax, 1
or eax, 0xf953f14a
sub eax, 0x728f50a3
imul ecx, eax, 0x6a6506d6
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x7cf2b42f
mov edx, 0xffffffff
xor edx, 0x7cf2b42f
or ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
sub eax, 0x465e66b0
mov ecx, 0x6b36704c
xor edx, edx
div ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0x8b89fa15
add eax, ecx
mov edx, 0xffffffff
xor edx, 0xae82ed7d
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0xae82ed7d
add eax, edx
sub eax, ecx
mov ecx, 0xce03bbca
xor edx, edx
div ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0xfa32d50c
add eax, ecx
imul ecx, eax, 0x5936836e
add ecx, 0x1100b4f0
or ecx, 0x538abf21
mov eax, ecx
add eax, 1
xor ecx, 0xffffffff
or ecx, 0x1db9c466
add ecx, eax
mov eax, ecx
and eax, 0x157d38fd
xor eax, 0xffffffff
add ecx, 0x157d38fd
add ecx, 1
add ecx, eax
add ecx, 0x1555cce8
sub ecx, 0x61b26939
sub ecx, 0x1555cce8
sub ecx, 0xb00b88a1
xor ecx, 0xab697ac
mov eax, ecx
or eax, 0x17123a43
xor eax, 0xffffffff
or ecx, 0x17123a43
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
imul ecx, eax, 0x498e19f8
mov edi, 0xffffffff
xor edi, 0x807e6130
mov edx, ecx
and edx, edi
mov eax, ecx
or eax, edi
xor eax, 0xffffffff
imul eax, edx
mov edx, ecx
and edx, 0x807e6130
or ecx, 0x807e6130
imul ecx, edx
add ecx, eax
xor ecx, 0xab468409
mov edx, ecx
xor edx, 0xffffffff
and edx, 0x231cba7
mov edi, 0xffffffff
xor edi, 0x231cba7
mov eax, ecx
and eax, edi
imul eax, edx
mov edx, ecx
and edx, 0x231cba7
or ecx, 0x231cba7
imul ecx, edx
add ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x1c993c0
or eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x1c993c0
or ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, eax
and ecx, 0xa000fde7
xor eax, 0xa000fde7
or ecx, eax
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xf3be01f5
mov edx, 0xffffffff
xor edx, 0xf3be01f5
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov edi, 0xffffffff
xor edi, 0xce688c15
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xce688c15
or eax, 0xce688c15
imul eax, edx
add eax, ecx
mov ecx, 0xb890a715
xor edx, edx
div ecx
mov ecx, eax
mov eax, dword [esi + 0x1fc]
mov edi, ecx
xor edi, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xe76ac7e2
or edi, edx
and ecx, 0xe76ac7e2
xor ecx, 0xffffffff
xor edi, 0xffffffff
xor ecx, 0xffffffff
or edi, ecx
sub edi, 0x3396ef67
sub edi, 0xbcac746b
add edi, 0x3396ef67
mov ecx, 0xbcfd554
mov edx, 0xfd68cd40
cmp edi, 0xbba19636
cmovne ecx, edx
mov dword [eax], ecx
jmp 0x10044e6d
mov eax, dword [0x101e4cd0]
mov edx, dword [0x101e4cd4]
mov ecx, eax
xor ecx, 0xffffffff
and ecx, edx
xor edx, 0xffffffff
and eax, edx
sub eax, ecx
mov edi, 0xffffffff
xor edi, 0x9176e6f4
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x9176e6f4
or eax, 0x9176e6f4
imul eax, edx
add eax, ecx
sub eax, 0x5c8de5b6
imul eax, eax, 0x539ac99f
mov ecx, 0xcdc52b0c
xor edx, edx
div ecx
mov ecx, 0xe0d5ee82
xor edx, edx
div ecx
mov ecx, eax
and ecx, 0x248e4bc0
and ecx, 0xb5a4b41a
or ecx, 0xf4f487c8
mov edx, 0xffffffff
xor edx, 0x2fcc3798
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, 0x6b77d22
xor edx, edx
div ecx
imul ecx, eax, 0x330e41cd
mov edx, 0xffffffff
xor edx, 0x77cfd336
mov eax, ecx
and eax, edx
mov edx, ecx
xor edx, 0x77cfd336
add ecx, edx
sub ecx, eax
mov eax, ecx
and eax, 0xc5b7d596
xor ecx, 0xc5b7d596
or eax, ecx
and eax, 0xa29e581
mov ecx, eax
xor ecx, 0x5eb513
xor ecx, 0xffffffff
and ecx, 0x5eb513
shl ecx, 1
sub ecx, 0x5eb513
sub eax, ecx
mov ecx, 0x4a31de54
xor edx, edx
div ecx
add eax, 0x60e1b3ed
mov ecx, 0x8a450943
xor edx, edx
div ecx
mov ecx, eax
mov edx, ecx
xor edx, 0xffffffff
and edx, 0x3e990c85
mov edi, 0xffffffff
xor edi, 0x3e990c85
mov eax, ecx
and eax, edi
imul eax, edx
mov edx, ecx
and edx, 0x3e990c85
or ecx, 0x3e990c85
imul ecx, edx
add ecx, eax
mov eax, ecx
and eax, 0x195120e9
xor eax, 0xffffffff
add ecx, 0x195120e9
add ecx, 1
add ecx, eax
and ecx, 0x102a27e9
sub ecx, 0x1bb808f8
sub ecx, 0x2c340bd7
add ecx, 0x1bb808f8
mov edx, 0xffffffff
xor edx, 0xe9f902b7
mov eax, ecx
xor eax, edx
and eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x91ae23c3
mov edi, 0xffffffff
xor edi, 0x91ae23c3
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0x91ae23c3
or eax, 0x91ae23c3
imul eax, edx
add eax, ecx
add eax, 0x34fa1d2
xor eax, 0x54e93538
mov ecx, 0x91a3f668
xor edx, edx
div ecx
mov ecx, 0x1a4b74b0
xor edx, edx
div ecx
mov ecx, 0x681700a6
xor edx, edx
div ecx
mov ecx, 0xd4a43536
xor edx, edx
div ecx
mov ecx, 0x1f1bc371
xor edx, edx
div ecx
mov ecx, 0xc01486e1
xor edx, edx
div ecx
mov ecx, eax
mov edi, 0xffffffff
xor edi, 0xcfbc6b8e
mov edx, ecx
and edx, edi
mov eax, ecx
or eax, edi
xor eax, 0xffffffff
imul eax, edx
mov edx, ecx
and edx, 0xcfbc6b8e
or ecx, 0xcfbc6b8e
imul ecx, edx
add ecx, eax
mov eax, ecx
and eax, 0x17ea87ec
xor ecx, 0x17ea87ec
or eax, ecx
imul eax, eax, 0x4de24f54
mov ecx, 0x8d370491
xor edx, edx
div ecx
mov edi, 0xffffffff
xor edi, 0x99fbf207
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x99fbf207
or eax, 0x99fbf207
imul eax, edx
add eax, ecx
add eax, 0xabf3c8c0
sub eax, 0x874d9a35
sub eax, 0x19ab1f2f
add eax, 0x874d9a35
mov ecx, 0xd542cff7
xor edx, edx
div ecx
xor eax, 0x9078db8e
and eax, eax
xor eax, 0xffffffff
mov ecx, 0x4c78335
and ecx, 0x4c78335
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0xffffffff
mov ecx, 0x5b0b55ee
xor edx, edx
div ecx
xor ecx, ecx
sub ecx, 0xe3454d1d
add eax, ecx
mov edi, 0xffffffff
xor edi, 0x96897ad8
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x96897ad8
or eax, 0x96897ad8
imul eax, edx
add eax, ecx
mov ecx, 0xde28c042
xor edx, edx
div ecx
mov ecx, eax
mov edx, 0xffffffff
xor edx, 0x7724103a
mov eax, ecx
xor eax, edx
and eax, ecx
sub eax, 0x31cdfe34
add eax, 0x557113f3
add eax, 0x31cdfe34
mov ecx, 0x7ddf7fcb
xor edx, edx
div ecx
mov ecx, eax
and ecx, 0x9f7341e8
shl ecx, 1
xor eax, 0x9f7341e8
add eax, ecx
add eax, 0x7b42121f
sub eax, 0x14a54807
sub eax, 0x7b42121f
mov ecx, eax
and ecx, 0x547895c8
xor ecx, 0xffffffff
and eax, 0x547895c8
xor eax, 0xffffffff
xor ecx, 0xffffffff
xor eax, 0xffffffff
or ecx, eax
mov eax, ecx
and eax, 0xbcff040f
xor eax, 0xffffffff
and ecx, 0xbcff040f
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
and eax, 0x3937a2bd
sub eax, 0x218757dc
or eax, 0xc74e388e
imul eax, eax, 0x9b29541a
mov ecx, 0x2554580f
xor edx, edx
div ecx
mov ecx, 0x183756af
xor edx, edx
div ecx
mov ecx, 0x7730e907
xor edx, edx
div ecx
mov edi, eax
mov eax, dword [esi + 0x1fc]
mov ecx, 0x570f9853
mov edx, 0xbcfd554
cmp edi, 0xedd70b00
cmovae ecx, edx
mov dword [eax], ecx
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov ecx, dword [esi + 0x190]
mov dword [ecx], 0
mov dword [eax], 0x6aa3fa16
jmp 0x10044e6d
mov eax, dword [0x101e4cd8]
mov edx, dword [0x101e4cdc]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov ecx, eax
xor ecx, 0x1fe7227
xor ecx, 0xffffffff
or eax, 0x1fe7227
and eax, ecx
sub eax, 0xdf2637d1
sub eax, 0x2d1dad58
add eax, 0xaac5aac4
add eax, 0x2d1dad58
and eax, 0xc8564192
imul eax, eax, 0x7317d52e
and eax, 0x688b51a8
sub eax, 0x4637c732
sub eax, 0xafb56e32
or eax, 0xd960f41a
sub eax, 0xa385db94
or eax, 0x54d5cdf4
or eax, eax
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0xf8d8d7ee
mov edx, 0xffffffff
xor edx, 0xf8d8d7ee
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
or eax, 0x218da9f4
or eax, 0x9c7236f9
mov ecx, 0xea4a8a23
xor edx, edx
div ecx
mov ecx, eax
or ecx, 0x24e8eca4
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, 0xfa663a7d
add eax, ecx
xor edi, edi
sub edi, eax
mov edx, 0xffffffff
xor edx, 0xd119e024
mov ecx, edi
and ecx, edx
mov eax, edi
or eax, edx
xor eax, 0xffffffff
imul eax, ecx
mov ecx, edi
and ecx, 0xd119e024
or edi, 0xd119e024
imul edi, ecx
add edi, eax
mov eax, edi
and eax, 0x5c810c5a
shl eax, 1
add edi, 0x5c810c5a
sub edi, eax
xor eax, eax
sub eax, 0x23508cda
add edi, eax
mov eax, edi
xor eax, 0xffffffff
and eax, 0x65ce669a
mov edx, 0xffffffff
xor edx, 0x65ce669a
and edi, edx
mov ecx, 0xffffffff
xor ecx, 0x733d2576
and ecx, 0x65ce669a
and edx, 0x733d2576
or eax, edi
or ecx, edx
xor eax, ecx
add eax, 0xb839fdca
or eax, 0x75bdbd6a
imul ecx, eax, 0x5c331568
xor eax, eax
sub eax, 0xb5947829
sub ecx, eax
mov eax, ecx
or eax, 0x9d7e1f91
xor eax, 0xffffffff
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x9d7e1f91
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
and eax, 0x9ec49a1c
mov edx, eax
xor edx, 0xffffffff
and edx, 0x4411d442
mov edi, 0xffffffff
xor edi, 0x4411d442
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0x4411d442
or eax, 0x4411d442
imul eax, edx
add eax, ecx
mov ecx, 0xfa134dba
xor edx, edx
div ecx
mov ecx, eax
or ecx, 0x7bcf301
mov edi, 0xffffffff
xor edi, 0x77b21b9b
mov edx, ecx
and edx, edi
mov eax, ecx
or eax, edi
xor eax, 0xffffffff
imul eax, edx
mov edx, ecx
and edx, 0x77b21b9b
or ecx, 0x77b21b9b
imul ecx, edx
add ecx, eax
mov eax, ecx
and eax, 0x3b641971
or ecx, 0x3b641971
add eax, ecx
mov edi, 0xffffffff
xor edi, 0xc1bdb981
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xc1bdb981
or eax, 0xc1bdb981
imul eax, edx
add eax, ecx
xor eax, 0x34870388
mov ecx, 0x23b71f44
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xc73ac1ac
xor ecx, 0xffffffff
or eax, 0xc73ac1ac
and eax, ecx
mov ecx, eax
and ecx, 0xba4d89c4
xor eax, 0xba4d89c4
or ecx, eax
xor ecx, 0x9b7fd82c
add ecx, 0x76ba3f6
add ecx, 0x4f104e37
sub ecx, 0x76ba3f6
mov eax, ecx
add eax, 1
xor ecx, 0xffffffff
or ecx, 0x36acb9f5
add ecx, eax
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0xe521e078
and ecx, 0xe521e078
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x487395da
xor edx, edx
div ecx
mov ecx, 0xe7fa2ebb
xor edx, edx
div ecx
sub eax, 0x98a92fbe
or eax, 0x6b2c5e39
imul eax, eax, 0x4f2140cd
sub eax, 0x1ee12490
mov ecx, 0xffffffff
xor ecx, 0xaeeaa8fc
add eax, ecx
add eax, 1
xor eax, 0xb33fae87
add eax, 0x11098106
mov edi, 0xffffffff
xor edi, 0x8e52bbfd
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x8e52bbfd
or eax, 0x8e52bbfd
imul eax, edx
add eax, ecx
or eax, 0x9f86f748
or eax, 0x37e6df99
or eax, 0xeb9e5fa1
mov ecx, eax
and ecx, 0x1b94befd
shl ecx, 1
add eax, 0x1b94befd
sub eax, ecx
xor eax, 0x54be9211
mov ecx, 0x99babac3
xor edx, edx
div ecx
mov ecx, eax
mov eax, dword [esi + 0x1fc]
imul edi, ecx, 0x42791773
and edi, 0xa9c39459
mov ecx, edi
xor ecx, 0xffffffff
and ecx, 0x8eb00226
mov edx, 0xffffffff
xor edx, 0x8eb00226
and edi, edx
sub edi, ecx
mov ecx, 0x3eede963
mov edx, 0xea7203bc
cmp edi, 0xcddd0655
cmove ecx, edx
mov dword [eax], ecx
jmp 0x10044e6d
mov ecx, dword [esi + 0x208]
xor ecx, ebp
call fcn.1018e3ba
mov eax, dword [esi + 4]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
push eax
sub esp, 8
mov edx, esp
and edx, 0xfffffff8
mov esp, edx
push eax
mov eax, esp
push eax
mov ebx, esp
mov edi, ebx
push eax
mov ecx, esp
mov dword [esi], ecx
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
mov ecx, dword [esi + 0x1e0]
mov dword [edx + 4], ecx
mov ecx, dword [esi + 0x1e4]
mov dword [edx], ecx
mov ecx, dword [esi + 0x1e8]
mov dword [eax], ecx
mov ecx, dword [esi]
mov eax, dword [edx]
mov dword [ebx], eax
mov eax, dword [esi + 0x1fc]
mov edx, dword [edx]
mov edi, dword [edi]
mov edi, dword [edi + 0x3c]
add edx, edi
mov dword [ecx], edx
mov dword [eax], 0x961425f1
jmp 0x10044e6d
mov edx, dword [esi + 0x1b4]
mov edi, dword [esi + 0x1a0]
mov ebx, dword [esi + 0x1d4]
mov ecx, dword [ebx]
mov eax, dword [edi]
mov eax, dword [eax + 0x20]
add ecx, eax
mov eax, dword [esi + 0x1b0]
mov dword [eax], ecx
mov ecx, dword [esi + 0x1b8]
mov eax, dword [esi + 0x1fc]
mov ebx, dword [ebx]
mov edi, dword [edi]
mov edi, dword [edi + 0x24]
add edi, ebx
mov dword [edx], edi
mov dword [ecx], 0
mov dword [eax], 0xaadaf448
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov dword [eax], 0xbae6343a
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov dword [eax], 0x3017a066
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov ecx, dword [esi + 0x1c0]
mov dword [ecx], 0
mov dword [eax], 0x4e4c7988
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov dword [eax], 0x6e60b3f9
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov dword [eax], 0x2bf28d2a
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov dword [eax], 0x765a340f
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov dword [eax], 0x27866e5f
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov dword [eax], 0x6f64f9c3
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov dword [eax], 0xe37c05d7
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov dword [eax], 0xfd68cd40
jmp 0x10044e6d
mov eax, dword [esi + 0x1fc]
mov dword [eax], 0x3eede963
jmp 0x1003bca8