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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xb8
mov esi, esp
mov eax, dword [ebp + 0x10]
mov dword [esi + 0x74], eax
mov eax, dword [ebp + 0xc]
mov dword [esi + 0x78], eax
mov eax, dword [ebp + 8]
mov dword [esi + 0x7c], eax
mov eax, dword [0x101d3b48]
xor eax, ebp
mov dword [esi + 0xb0], eax
mov eax, dword [0x101d3998]
mov ecx, dword [0x101d399c]
sub eax, 0xc002a6c1
add eax, ecx
add eax, 0xc002a6c1
mov ecx, 0x6bfcd890
xor edx, edx
div ecx
mov ecx, eax
mov eax, 0xffffffff
xor eax, 0xe8bfc53d
add ecx, eax
add ecx, 1
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x4b3667dd
or eax, edx
and ecx, 0x4b3667dd
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0xf90ca804
xor edx, edx
div ecx
imul eax, eax, 0xcb01ede5
mov ecx, 0x166c931e
xor edx, edx
div ecx
mov edi, eax
mov eax, edi
xor eax, 0xffffffff
and eax, 0x6d8d5689
mov edx, 0xffffffff
xor edx, 0x6d8d5689
and edi, edx
mov ecx, 0xffffffff
xor ecx, 0xe7e12d7a
and ecx, 0x6d8d5689
and edx, 0xe7e12d7a
or eax, edi
or ecx, edx
xor eax, ecx
imul eax, eax, 0x164115ec
mov ecx, 0xa91985d9
xor edx, edx
div ecx
xor eax, 0x73ce8505
mov ecx, 0xbfe0ef80
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
or eax, 0x401cfa0a
xor eax, 0xffffffff
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x401cfa0a
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0x780507d2
xor edx, edx
div ecx
mov ecx, 0x9e05b17c
xor edx, edx
div ecx
mov ecx, eax
and ecx, 0x4bfc3f3b
mov eax, ecx
xor eax, 0xffffffff
mov dword [esi + 0x84], eax
mov edi, 0xffffffff
xor edi, 0xb097f3c
mov edx, 0xffffffff
xor edx, 0xe5689a98
and eax, 0xe5689a98
mov dword [esi + 0x80], eax
and ecx, edx
mov ebx, edi
and ebx, 0xe5689a98
mov eax, edx
and eax, 0xb097f3c
mov dword [esi + 0x88], eax
mov eax, dword [esi + 0x80]
or eax, ecx
mov ecx, dword [esi + 0x84]
mov dword [esi + 0x8c], eax
mov eax, dword [esi + 0x88]
or ebx, eax
mov eax, dword [esi + 0x8c]
xor eax, ebx
or ecx, edi
xor ecx, 0xffffffff
or edx, 0xe5689a98
and ecx, edx
or eax, ecx
imul eax, eax, 0xe8f56eca
add eax, 0xd631aef8
mov ecx, eax
xor ecx, 0x6bd8c736
xor ecx, 0xffffffff
and ecx, 0x6bd8c736
shl ecx, 1
sub ecx, 0x6bd8c736
sub eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xf79fdaf7
add eax, ecx
add eax, 1
xor eax, 0x4a6b2008
sub eax, 0x71629f45
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xac513b16
mov ecx, 0xffffffff
xor ecx, 0x1455addf
or eax, edx
or ecx, 0x1455addf
xor eax, 0xffffffff
and eax, ecx
add eax, 0xfbc82a58
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xb744eaeb
mov ecx, 0xffffffff
xor ecx, 0xbc988a09
or eax, edx
or ecx, 0xbc988a09
xor eax, 0xffffffff
and eax, ecx
mov ecx, eax
and ecx, 0x76509557
or eax, 0x76509557
add ecx, eax
mov edx, 0xffffffff
xor edx, 0x823ecfa8
mov eax, ecx
xor eax, edx
and eax, ecx
imul eax, eax, 0xbc16e098
sub eax, 0xc7db6c5b
sub eax, 0xae9e0e78
add eax, 0x1e3061e1
add eax, 0xae9e0e78
mov ecx, eax
and ecx, 0xe0f563e5
xor eax, 0xe0f563e5
or ecx, eax
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x63074d66
and ecx, 0x63074d66
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x912358db
xor edx, edx
div ecx
mov ecx, 0xffffffff
xor ecx, 0xac984878
add eax, ecx
add eax, 1
mov ecx, 0x47c3b991
xor edx, edx
div ecx
mov ecx, 0x9c046c45
xor edx, edx
div ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x2b85af3e
mov edi, 0xffffffff
xor edi, 0x2b85af3e
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0x2b85af3e
or eax, 0x2b85af3e
imul eax, edx
add eax, ecx
sub eax, 0x6939ffcd
mov ecx, 0x1095d4f5
xor edx, edx
div ecx
xor ecx, ecx
sub ecx, 0x122ef322
sub eax, ecx
mov edi, 0xffffffff
xor edi, 0xd8505da1
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xd8505da1
or eax, 0xd8505da1
imul eax, edx
add eax, ecx
xor eax, 0x5f083a83
xor eax, 0xe64a8778
mov edx, eax
xor edx, 0xffffffff
and edx, 0x4d511f7b
mov edi, 0xffffffff
xor edi, 0x4d511f7b
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0x4d511f7b
or eax, 0x4d511f7b
imul eax, edx
add eax, ecx
mov ecx, 0x395977b0
xor edx, edx
div ecx
mov ecx, 0x5b202758
xor edx, edx
div ecx
mov ecx, eax
mov edi, 0xffffffff
xor edi, 0x4ff15e01
mov edx, ecx
and edx, edi
mov eax, ecx
or eax, edi
xor eax, 0xffffffff
imul eax, edx
mov edx, ecx
and edx, 0x4ff15e01
or ecx, 0x4ff15e01
imul ecx, edx
add ecx, eax
mov eax, ecx
and eax, 0x19eb7816
xor ecx, 0x19eb7816
or eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x80398dfc
mov edx, 0xffffffff
xor edx, 0x80398dfc
and eax, edx
sub eax, ecx
xor eax, 0xbc4b39a7
mov edi, 0xffffffff
xor edi, 0x435b49dc
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x435b49dc
or eax, 0x435b49dc
imul eax, edx
add eax, ecx
add eax, 0x9d9919bc
imul edi, eax, 0xf9f3ea33
xor edi, 0x5a9d705d
and edi, 0xc53186c6
or edi, 0x5ef5770
mov ecx, edi
xor ecx, 0xffffffff
and ecx, 0x56430528
mov edx, 0xffffffff
xor edx, 0x56430528
and edi, edx
mov eax, 0xffffffff
xor eax, 0xe6e3e4d7
and eax, 0x56430528
and edx, 0xe6e3e4d7
or ecx, edi
or eax, edx
xor ecx, eax
mov eax, ecx
and eax, 0x313b74eb
xor ecx, 0x313b74eb
or eax, ecx
or eax, eax
xor eax, 0xffffffff
mov ecx, 0xae9175ef
or ecx, 0xae9175ef
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
xor ecx, ecx
sub ecx, 0xd960a06c
sub eax, ecx
xor ecx, ecx
sub ecx, 0x312cd16
add eax, ecx
mov ecx, eax
xor ecx, 0xf29b82a5
mov edx, 0xffffffff
xor edx, 0xf29b82a5
and eax, edx
shl eax, 1
sub eax, ecx
mov ecx, 0xf63a1e49
xor edx, edx
div ecx
and eax, 0x80a572bf
sub eax, 0x3be57a3b
add eax, 0xfd29d369
add eax, 0x3be57a3b
and eax, 0xce583ec
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0xbd76e250
mov edx, 0xffffffff
xor edx, 0xbd76e250
and eax, edx
sub eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x47c445ab
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x23ded4d3
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [esi + 0xa8], 0x243334c6
lea ecx, [esi + 0xa8]
mov dword [esi + 0x98], ecx
add eax, 0xfd1cae7b
mov dword [esi + 0x90], eax
mov eax, dword [esi + 0x98]
mov dword [esi + 0x94], eax
mov eax, dword [esi + 0xa8]
mov dword [esi + 0x70], eax
sub eax, 0x8cd1f161
je 0x10174616
jmp 0x10173419
mov eax, dword [esi + 0x70]
sub eax, 0xac42087d
je 0x10173bd3
jmp 0x1017342c
mov eax, dword [esi + 0x70]
sub eax, 0xc6993b02
je 0x10173528
jmp 0x1017343f
mov eax, dword [esi + 0x70]
sub eax, 0xe26c271e
je 0x10173be4
jmp 0x10173452
mov eax, dword [esi + 0x70]
sub eax, 0x10c2c7ac
je 0x10174685
jmp 0x10173465
mov eax, dword [esi + 0x70]
sub eax, 0x1f2d1928
je 0x1017359d
jmp 0x10173478
mov eax, dword [esi + 0x70]
sub eax, 0x243334c6
je 0x10173502
jmp 0x1017348b
mov eax, dword [esi + 0x70]
sub eax, 0x2a922f36
je 0x101740d5
jmp 0x1017349e
mov eax, dword [esi + 0x70]
sub eax, 0x2b02aa0e
je 0x101745fe
jmp 0x101734b1
mov eax, dword [esi + 0x70]
sub eax, 0x2d53671b
je 0x101735bd
jmp 0x101734c4
mov eax, dword [esi + 0x70]
sub eax, 0x381545e1
je 0x10173773
jmp 0x101734d7
mov eax, dword [esi + 0x70]
sub eax, 0x4128a3dd
je 0x10173b99
jmp 0x101734ea
mov eax, dword [esi + 0x70]
sub eax, 0x44f73059
je 0x1017465f
jmp 0x101734fd
jmp 0x10174691
mov eax, dword [esi + 0x94]
mov edi, dword [esi + 0x90]
mov ecx, 0x8cd1f161
mov edx, 0xc6993b02
cmp edi, 0xe219f4a1
cmovb ecx, edx
mov dword [eax], ecx
jmp 0x10174691
xor edi, edi
push eax
mov eax, esp
mov dword [esi + 0x5c], eax
push eax
mov edx, esp
push eax
mov eax, esp
push eax
mov ebx, esp
mov ecx, ebx
mov dword [esi + 0x60], ecx
sub esp, 8
mov ecx, esp
and ecx, 0xfffffff8
mov dword [esi + 0x64], ecx
mov esp, ecx
mov ecx, dword [esi + 0x74]
mov dword [edx], ecx
mov ecx, dword [esi + 0x78]
mov dword [eax], ecx
mov ecx, dword [esi + 0x7c]
mov dword [ebx], ecx
mov ecx, dword [esi + 0x64]
mov eax, dword [eax]
mov edx, dword [edx]
mul edx
mov ebx, eax
mov eax, dword [esi + 0x94]
mov dword [esi + 0x68], ebx
mov ebx, edx
mov edx, dword [esi + 0x68]
mov dword [ecx + 4], ebx
mov dword [ecx], edx
mov ecx, dword [ecx + 4]
test ecx, ecx
setne cl
mov byte [esi + 0x6f], cl
mov ecx, 0x8cd1f161
mov edx, 0x1f2d1928
cmp edi, 0x484d1a06
cmovb ecx, edx
mov dword [eax], ecx
jmp 0x10174691
mov eax, dword [esi + 0x94]
mov bl, byte [esi + 0x6f]
mov ecx, 0x381545e1
mov edx, 0x2d53671b
test bl, 1
cmovne ecx, edx
mov dword [eax], ecx
jmp 0x10174691
mov dword [esi + 0xa4], 0x216
mov dword [esi + 0xac], 0x8aaabde7
lea eax, [esi + 0xac]
mov dword [esi + 0xa0], eax
mov eax, dword [esi + 0xa4]
mov dword [esi + 0x54], eax
mov eax, dword [esi + 0xa0]
mov dword [esi + 0x58], eax
mov eax, dword [esi + 0xac]
mov dword [esi + 0x50], eax
sub eax, 0x8aaabde7
je 0x101736b8
jmp 0x10173608
mov eax, dword [esi + 0x50]
sub eax, 0x95790755
je 0x101736f1
jmp 0x1017361b
mov eax, dword [esi + 0x50]
sub eax, 0xa0b8ae1b
je 0x10173716
jmp 0x1017362e
mov eax, dword [esi + 0x50]
sub eax, 0xcedf5a0c
je 0x101736e3
jmp 0x10173641
mov eax, dword [esi + 0x50]
sub eax, 0xdf3a61f0
je 0x10173749
jmp 0x10173654
mov eax, dword [esi + 0x50]
sub eax, 0xeb7ef7e8
je 0x10173708
jmp 0x10173667
mov eax, dword [esi + 0x50]
sub eax, 0x203a1ff3
je 0x10173757
jmp 0x1017367a
mov eax, dword [esi + 0x50]
sub eax, 0x3c752465
je 0x10173724
jmp 0x1017368d
mov eax, dword [esi + 0x50]
sub eax, 0x615bded8
je 0x1017373b
jmp 0x101736a0
mov eax, dword [esi + 0x50]
sub eax, 0x716b2124
je 0x101736d5
jmp 0x101736b3
jmp 0x10173752
mov eax, dword [esi + 0x58]
mov edi, dword [esi + 0x54]
mov ecx, 0xeb7ef7e8
mov edx, 0x716b2124
cmp edi, 0
cmovle ecx, edx
mov dword [eax], ecx
jmp 0x10173752
mov eax, dword [esi + 0x58]
mov dword [eax], 0xcedf5a0c
jmp 0x10173752
mov eax, dword [esi + 0x58]
mov dword [eax], 0x95790755
jmp 0x10173752
mov eax, dword [esi + 0x4c]
mov ecx, dword [esi + 0x58]
mov dword [ecx], 0x203a1ff3
mov dword [esi + 0x9c], eax
jmp 0x10173752
mov eax, dword [esi + 0x58]
mov dword [eax], 0xa0b8ae1b
jmp 0x10173752
mov eax, dword [esi + 0x58]
mov dword [eax], 0x3c752465
jmp 0x10173752
mov eax, dword [esi + 0x48]
mov ecx, dword [esi + 0x58]
mov dword [ecx], 0x203a1ff3
mov dword [esi + 0x9c], eax
jmp 0x10173752
mov eax, dword [esi + 0x58]
mov dword [eax], 0xcedf5a0c
jmp 0x10173752
mov eax, dword [esi + 0x58]
mov dword [eax], 0xa0b8ae1b
jmp 0x101735ef
mov eax, dword [esi + 0x94]
mov ecx, dword [esi + 0x5c]
mov edx, dword [esi + 0x9c]
mov dword [ecx], edx
mov dword [eax], 0xe26c271e
jmp 0x10174691
mov ecx, dword [0x101d39a8]
sub ecx, dword [0x101d39ac]
mov eax, ecx
xor eax, 0xffffffff
mov dword [esi + 0x3c], eax
mov edi, 0xffffffff
xor edi, 0xa4b91687
mov edx, 0xffffffff
xor edx, 0x818cda24
and eax, 0x818cda24
mov dword [esi + 0x38], eax
and ecx, edx
mov ebx, edi
and ebx, 0x818cda24
mov eax, edx
and eax, 0xa4b91687
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, 0x818cda24
and ecx, edx
or eax, ecx
sub eax, 0x9788526d
xor eax, 0x7c2c1891
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0xff55ed48
add ecx, eax
xor eax, eax
sub eax, ecx
mov ecx, 0x4cf0f795
xor edx, edx
div ecx
mov ecx, 0x9bb607f
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xef76c016
add ecx, 0x78579d83
mov eax, ecx
and eax, 0xaefd88a1
xor eax, 0xffffffff
and ecx, 0xaefd88a1
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0xffffffff
sub eax, 0x7d10d157
xor eax, 0xdc8921b7
imul eax, eax, 0xd38db2e8
mov ecx, 0x9f6f5740
xor edx, edx
div ecx
mov ecx, eax
sub ecx, 0x28956f56
or ecx, 0x8a49a4f6
and ecx, 0xb7de4d7e
mov edx, ecx
xor edx, 0xffffffff
and edx, 0xb273ad81
mov edi, 0xffffffff
xor edi, 0xb273ad81
mov eax, ecx
and eax, edi
imul eax, edx
mov edx, ecx
and edx, 0xb273ad81
or ecx, 0xb273ad81
imul ecx, edx
add ecx, eax
xor eax, eax
sub eax, 0x557e3ff0
add ecx, eax
or ecx, 0xf2cddc7d
mov eax, ecx
xor eax, 0x7460651c
mov edx, 0xffffffff
xor edx, 0x7460651c
and ecx, edx
shl ecx, 1
sub ecx, eax
or ecx, 0xd7d1b588
or ecx, 0xc16110bd
or ecx, 0xe8f765b7
and ecx, 0x40d38e3a
mov eax, ecx
and eax, 0x6b927349
xor ecx, 0x6b927349
or eax, ecx
or eax, 0xafd68d02
imul eax, eax, 0x3e8a26c6
mov ecx, 0xf919f1bb
xor edx, edx
div ecx
add eax, 0x3f2cd6b
xor eax, 0x1df58303
add eax, 0x4732eeb6
sub eax, 0x9530a46e
sub eax, 0x4732eeb6
mov ecx, 0x741ca58f
xor edx, edx
div ecx
mov ecx, 0x141ede4e
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
and eax, eax
xor eax, 0xffffffff
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xe09f8e3
or eax, edx
mov edx, 0xffffffff
xor edx, 0xe09f8e3
mov edi, 0xffffffff
xor edi, 0xe09f8e3
or edx, edi
and ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
sub eax, 0xb0ea37b2
or eax, 0x93883a33
mov ecx, eax
xor ecx, 0x80fdc34
mov edx, 0xffffffff
xor edx, 0x80fdc34
and eax, edx
shl eax, 1
sub eax, ecx
mov ecx, eax
and ecx, 0x42648374
shl ecx, 1
add eax, 0x42648374
sub eax, ecx
mov edx, 0xffffffff
xor edx, 0xb64b0981
mov ecx, eax
xor ecx, edx
and ecx, eax
add ecx, 0x18f732c0
add ecx, 0x12f2bd01
sub ecx, 0x18f732c0
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x34169ff7
mov edx, 0xffffffff
xor edx, 0x34169ff7
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
xor eax, 0xbd63234d
sub eax, 0xe546d40d
and eax, 0x3dcd93b3
add eax, 0x2c998d9e
mov ecx, 0x77133b3a
xor edx, edx
div ecx
mov edx, 0xffffffff
xor edx, 0x83d78371
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0x83d78371
add eax, edx
sub eax, ecx
sub eax, 0x97efebc0
mov ecx, 0x58493949
xor edx, edx
div ecx
mov ecx, eax
mov eax, dword [esi + 0x94]
mov edx, ecx
or edx, 0xf718ff04
xor edx, 0xffffffff
xor ecx, 0xffffffff
mov edi, 0xffffffff
xor edi, 0xf718ff04
and ecx, edi
xor edx, 0xffffffff
xor ecx, 0xffffffff
and edx, ecx
mov ecx, edx
xor ecx, 0xfa5094bb
xor ecx, 0xffffffff
and ecx, 0xfa5094bb
shl ecx, 1
sub ecx, 0xfa5094bb
sub edx, ecx
mov ecx, edx
xor ecx, 0xffffffff
xor edx, 0xffffffff
or ecx, edx
mov edx, 0xe8ec9204
and edx, 0xe8ec9204
xor edx, 0xffffffff
and ecx, edx
xor ecx, 0xffffffff
imul edx, ecx, 0x8f835aea
mov ecx, edx
and ecx, 0x5b4e3ae9
or edx, 0x5b4e3ae9
add ecx, edx
and ecx, 0xf0479cd9
imul edx, ecx, 0x8d88f26a
mov edi, 0xffffffff
xor edi, 0xb59454b5
mov ecx, edx
xor ecx, edi
and ecx, edx
sub ecx, 0xea2d8bbe
or ecx, 0xcf4fcb33
imul ecx, ecx, 0x9b9b1405
add ecx, 0xa641985b
sub ecx, 0x84a06853
sub ecx, 0xa641985b
xor ecx, 0xeef05046
mov edx, ecx
and edx, 0x7634b5e0
shl edx, 1
add ecx, 0x7634b5e0
sub ecx, edx
mov edx, ecx
or edx, edx
xor edx, 0xffffffff
mov edi, 0xffffffff
xor edi, 0x4fd4a2c4
mov ebx, 0xffffffff
xor ebx, 0x4fd4a2c4
and edi, ebx
or edx, edi
xor edx, 0xffffffff
or ecx, 0x4fd4a2c4
xor ecx, 0xffffffff
xor edx, 0xffffffff
xor ecx, 0xffffffff
and edx, ecx
sub edx, 0xe77596b1
xor edx, 0x161c550c
mov ecx, edx
and ecx, 0xd858a624
xor ecx, 0xffffffff
and edx, 0xd858a624
xor edx, 0xffffffff
and ecx, edx
xor ecx, 0xffffffff
xor ecx, 0xffffffff
mov edi, 0xffffffff
xor edi, 0x57b81bcf
mov edx, 0xffffffff
xor edx, 0xf0e947
or ecx, edi
or edx, 0xf0e947
xor ecx, 0xffffffff
and ecx, edx
imul edi, ecx, 0xee3617a8
xor edi, 0x20686665
mov ecx, 0x44f73059
mov edx, 0x4128a3dd
cmp edi, 0x74c30769
cmovne ecx, edx
mov dword [eax], ecx
jmp 0x10174691
mov eax, dword [esi + 0x94]
mov ecx, dword [esi + 0x5c]
mov edx, dword [esi + 0x60]
mov ebx, dword [esi + 0x64]
mov edi, 0x7dcf1b53
mov ebx, dword [ebx]
mov edx, dword [edx]
mov dword [edx], ebx
mov dword [ecx], 0
mov ecx, 0x4128a3dd
mov edx, 0xac42087d
cmp edi, 0x5205704c
cmovne ecx, edx
mov dword [eax], ecx
jmp 0x10174691
mov eax, dword [esi + 0x94]
mov dword [eax], 0xe26c271e
jmp 0x10174691
mov eax, dword [0x101d39b8]
sub eax, dword [0x101d39bc]
sub eax, 0x55d3931
add eax, 0x7323c411
add eax, 0x55d3931
mov edi, 0xffffffff
xor edi, 0x9888f42b
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x9888f42b
or eax, 0x9888f42b
imul eax, edx
add eax, ecx
add eax, 0x41749fb6
and eax, 0x596cf78a
mov edi, 0xffffffff
xor edi, 0x15451b1a
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x15451b1a
or eax, 0x15451b1a
imul eax, edx
add eax, ecx
mov ecx, 0x6d008463
xor edx, edx
div ecx
xor eax, 0x9ce8b02f
and eax, 0xe906ea08
or eax, 0x35c085ca
mov ecx, 0xd6454169
xor edx, edx
div ecx
imul eax, eax, 0x6c6d2491
sub eax, 0x8c8192e5
add eax, 0x4cd56ec7
xor eax, 0x508ba1b9
and eax, 0x4f32a89a
xor eax, 0x2936b39c
imul ecx, eax, 0x7357e6f8
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
or eax, edx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xc10d5987
or eax, edx
mov edx, 0xc10d5987
and edx, 0xc10d5987
xor edx, 0xffffffff
xor ecx, 0xffffffff
xor edx, 0xffffffff
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
mov ecx, eax
xor ecx, 0x736cb13e
xor ecx, 0xffffffff
or eax, 0x736cb13e
and eax, ecx
or eax, 0x8e1f21ae
mov edi, eax
or edi, 0xecfa6ca2
xor edi, 0xffffffff
or eax, 0xecfa6ca2
xor eax, 0xffffffff
or edi, eax
xor edi, 0xffffffff
mov ecx, edi
xor ecx, 0xffffffff
and ecx, 0xacdff4ec
mov edx, 0xffffffff
xor edx, 0xacdff4ec
and edi, edx
mov eax, 0xffffffff
xor eax, 0x77f35152
and eax, 0xacdff4ec
and edx, 0x77f35152
or ecx, edi
or eax, edx
xor ecx, eax
xor eax, eax
sub eax, 0x214d1051
add ecx, eax
or ecx, 0xf7a233a5
and ecx, 0xa4db34a4
mov edx, 0xffffffff
xor edx, 0x310187e0
mov eax, ecx
xor eax, edx
and eax, ecx
or eax, eax
xor eax, 0xffffffff
mov ecx, 0xde63b863
or ecx, 0xde63b863
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
add eax, 0x7f2dbe98
add eax, 0xed607127
add eax, 0x92aa4545
sub eax, 0xed607127
imul ecx, eax, 0x504f8778
mov edx, ecx
xor edx, 0xffffffff
and edx, 0x2cd73e56
mov edi, 0xffffffff
xor edi, 0x2cd73e56
mov eax, ecx
and eax, edi
imul eax, edx
mov edx, ecx
and edx, 0x2cd73e56
or ecx, 0x2cd73e56
imul ecx, edx
add ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov dword [esi + 0x20], eax
mov edi, 0xffffffff
xor edi, 0xb6e005a6
mov edx, 0xffffffff
xor edx, 0x7799da3
and eax, 0x7799da3
mov dword [esi + 0x1c], eax
and ecx, edx
mov ebx, edi
and ebx, 0x7799da3
mov eax, edx
and eax, 0xb6e005a6
mov dword [esi + 0x24], eax
mov eax, dword [esi + 0x1c]
or eax, ecx
mov ecx, dword [esi + 0x20]
mov dword [esi + 0x28], eax
mov eax, dword [esi + 0x24]
or ebx, eax
mov eax, dword [esi + 0x28]
xor eax, ebx
or ecx, edi
xor ecx, 0xffffffff
or edx, 0x7799da3
and ecx, edx
or eax, ecx
mov ecx, 0x71d173be
xor edx, edx
div ecx
or eax, 0xfdcbe23a
xor eax, 0x8dcc2b36
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x5f6b426b
mov ecx, 0xffffffff
xor ecx, 0x1e46629a
or eax, edx
or ecx, 0x1e46629a
xor eax, 0xffffffff
and eax, ecx
and eax, 0x371ca986
or eax, 0xa24c183f
mov ecx, 0x39f02208
xor edx, edx
div ecx
mov ecx, 0xffffffff
xor ecx, 0x381fca2f
add eax, ecx
add eax, 1
mov edx, eax
xor edx, 0xffffffff
and edx, 0xcbb6dead
mov edi, 0xffffffff
xor edi, 0xcbb6dead
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0xcbb6dead
or eax, 0xcbb6dead
imul eax, edx
add eax, ecx
sub eax, 0x9754f032
mov ecx, eax
xor ecx, 0xf0c44754
xor ecx, 0xffffffff
and ecx, 0xf0c44754
shl ecx, 1
sub ecx, 0xf0c44754
sub eax, ecx
xor ecx, ecx
sub ecx, 0x4e781d4b
sub eax, ecx
and eax, 0xb1a7932a
imul ecx, eax, 0x6c516c50
mov edx, 0xffffffff
xor edx, 0x2f2c944f
mov eax, ecx
xor eax, edx
and eax, ecx
or eax, 0x258c1d47
mov edx, eax
xor edx, 0xffffffff
and edx, 0xdde04b0d
mov edi, 0xffffffff
xor edi, 0xdde04b0d
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0xdde04b0d
or eax, 0xdde04b0d
imul eax, edx
add eax, ecx
or eax, 0xdd0ddc96
xor eax, 0xc6870585
mov ecx, 0x1fdd74b2
xor edx, edx
div ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x6af62c29
mov edi, 0xffffffff
xor edi, 0x6af62c29
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0x6af62c29
or eax, 0x6af62c29
imul eax, edx
add eax, ecx
imul eax, eax, 0xe598fbf5
imul eax, eax, 0xa4a1719a
imul eax, eax, 0xb8b8e06b
or eax, 0xef110ac5
xor ecx, ecx
sub ecx, 0x4e7bf4d4
add eax, ecx
mov ecx, 0xfbf53a76
xor edx, edx
div ecx
xor ecx, ecx
sub ecx, 0x587f1652
sub eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
mov dword [esi + 0x34], ecx
mov edi, 0xffffffff
xor edi, 0xf3ebd354
mov edx, 0xffffffff
xor edx, 0xe0746f89
and ecx, 0xe0746f89
and eax, edx
mov dword [esi + 0x2c], eax
mov ebx, edi
and ebx, 0xe0746f89
mov eax, edx
and eax, 0xf3ebd354
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x2c]
or ecx, eax
mov eax, dword [esi + 0x30]
or ebx, eax
mov eax, dword [esi + 0x34]
xor ecx, ebx
or eax, edi
xor eax, 0xffffffff
or edx, 0xe0746f89
and eax, edx
or ecx, eax
mov eax, ecx
or eax, eax
xor eax, 0xffffffff
mov edx, 0x8a4bdef7
or edx, 0x8a4bdef7
xor edx, 0xffffffff
or eax, edx
xor eax, 0xffffffff
or ecx, 0x8a4bdef7
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0x8dca5157
xor edx, edx
div ecx
mov ecx, eax
mov edx, 0xffffffff
xor edx, 0x6878f4d5
mov eax, ecx
xor eax, edx
and eax, ecx
imul eax, eax, 0xe1e6e001
sub eax, 0x32b8a33f
mov edx, eax
xor edx, 0xffffffff
and edx, 0x99a414a2
mov edi, 0xffffffff
xor edi, 0x99a414a2
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0x99a414a2
or eax, 0x99a414a2
imul eax, edx
add eax, ecx
and eax, 0x6156e626
mov ecx, 0xf4e71adb
xor edx, edx
div ecx
mov edi, eax
mov eax, dword [esi + 0x94]
mov ebx, 0xffffffff
xor ebx, 0x4579f6de
mov edx, edi
and edx, ebx
mov ecx, edi
or ecx, ebx
xor ecx, 0xffffffff
imul ecx, edx
mov edx, edi
and edx, 0x4579f6de
or edi, 0x4579f6de
imul edi, edx
add edi, ecx
mov ecx, 0x2a922f36
mov edx, 0x10c2c7ac
cmp edi, 0x121a1b57
cmove ecx, edx
mov dword [eax], ecx
jmp 0x10174691
mov ecx, dword [0x101d39c0]
xor ecx, dword [0x101d39c4]
xor eax, eax
sub eax, 0x247bfa5f
add ecx, eax
xor ecx, 0xb55a30bb
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x96a10a1e
and eax, edx
or ecx, 0x96a10a1e
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
add eax, 0xbdfdec1
imul edi, eax, 0x85104ab7
xor eax, eax
sub eax, 0x1ce44d82
add edi, eax
mov eax, edi
xor eax, 0xffffffff
and eax, 0xac1bc53a
mov edx, 0xffffffff
xor edx, 0xac1bc53a
and edi, edx
mov ecx, 0xffffffff
xor ecx, 0x249e6d5a
and ecx, 0xac1bc53a
and edx, 0x249e6d5a
or eax, edi
or ecx, edx
xor eax, ecx
sub eax, 0x9a912eb1
sub eax, 0xbe8c04e4
add eax, 0x9a912eb1
imul ecx, eax, 0xb33e7b0e
mov eax, ecx
and eax, 0xe0916780
shl eax, 1
add ecx, 0xe0916780
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
and eax, 0x3b0b21ec
mov edx, 0xffffffff
xor edx, 0x3b0b21ec
and ecx, edx
or eax, ecx
mov edi, eax
xor edi, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0x4850b4a6
and edi, ecx
or eax, 0x4850b4a6
xor eax, 0xffffffff
xor edi, 0xffffffff
xor eax, 0xffffffff
and edi, eax
sub edi, 0x971523dd
add edi, 0x51f0ad22
add edi, 0x971523dd
mov eax, edi
xor eax, 0xffffffff
and eax, 0xf0f7fee1
mov edx, 0xffffffff
xor edx, 0xf0f7fee1
and edi, edx
mov ecx, 0xffffffff
xor ecx, 0x20ac2485
and ecx, 0xf0f7fee1
and edx, 0x20ac2485
or eax, edi
or ecx, edx
xor eax, ecx
add eax, 0x8faded7f
sub eax, 0x35ea917b
sub eax, 0x8faded7f
mov ecx, 0xedb6f49c
xor edx, edx
div ecx
and eax, 0xbc123b13
imul eax, eax, 0x4d8126a8
sub eax, 0x87ab7bc4
mov ecx, eax
and ecx, 0x70daf25a
xor ecx, 0xffffffff
add eax, 0x70daf25a
add eax, 1
add eax, ecx
mov ecx, 0xe10ffb63
xor edx, edx
div ecx
or eax, 0x20ea2ff7
mov ecx, 0xffffffff
xor ecx, 0x823ca78
add eax, ecx
add eax, 1
add eax, 0x64473d03
add eax, 0x99992ebe
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x2ea80090
mov ecx, 0xffffffff
xor ecx, 0x9973511
or eax, edx
or ecx, 0x9973511
xor eax, 0xffffffff
and eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x9e0f77bd
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
imul eax, eax, 0xda6ccee8
sub eax, 0xf49fe383
sub eax, 0xce123ff5
sub eax, 0x9706232e
add eax, 0xce123ff5
sub eax, 0x29075614
add eax, 0xe708cfbb
imul eax, eax, 0xdec564fa
or eax, 0xec6372af
and eax, 0x197a8924
mov edi, eax
xor edi, 0xffffffff
mov ecx, eax
xor ecx, 0xffffffff
and edi, ecx
mov ecx, 0xffffffff
xor ecx, 0x34c55bf0
mov edx, 0xffffffff
xor edx, 0x34c55bf0
and ecx, edx
xor edi, 0xffffffff
xor ecx, 0xffffffff
and edi, ecx
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0x34c55bf0
and eax, ecx
or edi, eax
xor edi, 0xffffffff
mov eax, edi
xor eax, 0xffffffff
and eax, 0x7e3b37c
mov edx, 0xffffffff
xor edx, 0x7e3b37c
and edi, edx
mov ecx, 0xffffffff
xor ecx, 0x1d103e48
and ecx, 0x7e3b37c
and edx, 0x1d103e48
or eax, edi
or ecx, edx
xor eax, ecx
and eax, 0x781c57d7
mov ecx, eax
and ecx, 0xdcc589f6
xor ecx, 0xffffffff
add eax, 0xdcc589f6
add eax, 1
add eax, ecx
mov ecx, eax
and ecx, 0x1d50617e
xor ecx, 0xffffffff
add eax, 0x1d50617e
add eax, 1
add eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x8307ec94
mov edi, 0xffffffff
xor edi, 0x8307ec94
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0x8307ec94
or eax, 0x8307ec94
imul eax, edx
add eax, ecx
mov ecx, eax
xor ecx, 0x16eb5c1f
mov edx, 0xffffffff
xor edx, 0x16eb5c1f
and eax, edx
shl eax, 1
sub eax, ecx
mov edi, 0xffffffff
xor edi, 0x1f9c24f0
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x1f9c24f0
or eax, 0x1f9c24f0
imul eax, edx
add eax, ecx
sub eax, 0x2c0b2d75
mov ecx, 0xf90db0be
xor edx, edx
div ecx
sub eax, 0x75bb98c1
add eax, 0x7cf57d79
add eax, 0x75bb98c1
mov ecx, eax
and ecx, 0x8da59df3
shl ecx, 1
add eax, 0x8da59df3
sub eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xf36bc030
add eax, ecx
add eax, 1
imul eax, eax, 0xd0c38f35
sub eax, 0xf8fed636
sub eax, 0x5174fa2e
add eax, 0xf8fed636
mov edx, eax
xor edx, 0xffffffff
and edx, 0x1cf10ae4
mov edi, 0xffffffff
xor edi, 0x1cf10ae4
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0x1cf10ae4
or eax, 0x1cf10ae4
imul eax, edx
add eax, ecx
add eax, 0xcd87f5ee
mov ecx, eax
and ecx, 0x86dcd5e3
xor ecx, 0xffffffff
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x86dcd5e3
or eax, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
or ecx, eax
and ecx, 0xa5dd978e
add ecx, 0x2ea43d26
sub ecx, 0x4c1e0cde
sub ecx, 0x2ea43d26
or ecx, 0x48c2eba0
mov edx, ecx
xor edx, 0xffffffff
mov ebx, 0xffffffff
xor ebx, 0x4a6ab3fe
mov edi, 0xffffffff
xor edi, 0x2973df42
mov eax, edx
and eax, 0x2973df42
mov dword [esi + 8], eax
and ecx, edi
mov eax, ebx
and eax, 0x2973df42
mov dword [esi + 0xc], eax
mov eax, edi
and eax, 0x4a6ab3fe
mov dword [esi + 0x10], eax
mov eax, dword [esi + 8]
or eax, ecx
mov ecx, dword [esi + 0xc]
mov dword [esi + 0x14], eax
mov eax, dword [esi + 0x10]
or ecx, eax
mov eax, dword [esi + 0x14]
xor eax, ecx
mov ecx, dword [esi + 0x5c]
or edx, ebx
xor edx, 0xffffffff
or edi, 0x2973df42
and edx, edi
or eax, edx
sub eax, 0xca422191
mov edi, 0xb776f9a1
xor edx, edx
div edi
mov ebx, eax
mov edx, ebx
xor edx, 0xffffffff
and edx, 0xa89d24d
mov edi, 0xffffffff
xor edi, 0xa89d24d
and ebx, edi
mov eax, 0xffffffff
xor eax, 0x33df92dd
and eax, 0xa89d24d
and edi, 0x33df92dd
or edx, ebx
or eax, edi
xor edx, eax
mov eax, edx
and eax, 0xc9492f85
xor edx, 0xc9492f85
or eax, edx
sub eax, 0x31e12203
xor eax, 0xffffffff
mov edi, 0xffffffff
xor edi, 0xf1bb0dff
mov edx, 0xffffffff
xor edx, 0x2e2404a5
or eax, edi
or edx, 0x2e2404a5
xor eax, 0xffffffff
and eax, edx
mov edx, eax
and edx, 0xa3d0a7be
xor edx, 0xffffffff
add eax, 0xa3d0a7be
add eax, 1
add eax, edx
and eax, 0xc26bc21e
imul eax, eax, 0x2ab02d25
xor eax, 0x553a37b3
mov edi, 0x6667d75c
xor edx, edx
div edi
mov edx, eax
mov eax, dword [esi + 0x94]
mov edi, edx
and edi, 0x6c1a7243
or edx, 0x6c1a7243
add edi, edx
xor edi, 0xa544ab81
mov ecx, dword [ecx]
mov dword [esi + 0x18], ecx
mov ecx, 0x2a922f36
mov edx, 0x2b02aa0e
cmp edi, 0x547581b3
cmovae ecx, edx
mov dword [eax], ecx
jmp 0x10174691
mov ecx, dword [esi + 0xb0]
xor ecx, ebp
call fcn.1017ab8f
mov eax, dword [esi + 0x18]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov ebx, dword [esi + 0x74]
push eax
push eax
mov edx, esp
push eax
mov eax, esp
push eax
mov edi, esp
sub esp, 8
mov ecx, esp
and ecx, 0xfffffff8
mov esp, ecx
mov dword [edx], ebx
mov ebx, dword [esi + 0x78]
mov dword [eax], ebx
mov ebx, dword [esi + 0x7c]
mov dword [edi], ebx
mov eax, dword [eax]
mov edx, dword [edx]
mul edx
mov edi, eax
mov eax, dword [esi + 0x94]
mov dword [esi + 4], edi
mov edi, edx
mov edx, dword [esi + 4]
mov dword [ecx + 4], edi
mov dword [ecx], edx
mov dword [eax], 0xc6993b02
jmp 0x10174691
mov eax, dword [esi + 0x94]
mov ecx, dword [esi + 0x5c]
mov edx, dword [esi + 0x60]
mov edi, dword [esi + 0x64]
mov edi, dword [edi]
mov edx, dword [edx]
mov dword [edx], edi
mov dword [ecx], 0
mov dword [eax], 0x4128a3dd
jmp 0x10174691
mov eax, dword [esi + 0x94]
mov dword [eax], 0x2a922f36
jmp 0x10173400