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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xb0
mov esi, esp
mov eax, dword [ebp + 8]
mov dword [esi + 0x54], eax
mov dword [esi + 0x58], eax
mov eax, dword [ebp + 0xc]
mov dword [esi + 0x5c], eax
mov eax, dword [0x101d37a8]
xor eax, ebp
mov dword [esi + 0xa8], eax
mov eax, dword [0x101d3508]
xor edx, edx
div dword [0x101d350c]
mov ecx, eax
or ecx, 0x8516de5a
mov eax, ecx
xor eax, 0x7b7c83a3
xor eax, 0xffffffff
and eax, 0x7b7c83a3
shl eax, 1
sub eax, 0x7b7c83a3
sub ecx, eax
mov eax, ecx
add eax, 1
xor ecx, 0xffffffff
or ecx, 0xf426c84
add ecx, eax
mov eax, ecx
and eax, 0x753ad894
xor ecx, 0x753ad894
or eax, ecx
and eax, 0xbcda466
imul eax, eax, 0x3c3c4a8e
add eax, 0x8b414f3
add eax, 0x1533f966
sub eax, 0x8b414f3
mov edx, eax
xor edx, 0xffffffff
and edx, 0xcc54a992
mov edi, 0xffffffff
xor edi, 0xcc54a992
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0xcc54a992
or eax, 0xcc54a992
imul eax, edx
add eax, ecx
or eax, 0x1db0294e
or eax, 0x56037a0a
mov edx, eax
xor edx, 0xffffffff
and edx, 0x7d02cfc
mov edi, 0xffffffff
xor edi, 0x7d02cfc
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0x7d02cfc
or eax, 0x7d02cfc
imul eax, edx
add eax, ecx
mov ecx, 0xd60dc821
xor edx, edx
div ecx
mov ecx, 0x4db610d6
xor edx, edx
div ecx
add eax, 0x8af456bb
sub eax, 0xc9207e0c
sub eax, 0x8af456bb
sub eax, 0xd0dc9b57
mov ecx, eax
xor ecx, 0xde9190f3
mov edx, 0xffffffff
xor edx, 0xde9190f3
and eax, edx
shl eax, 1
sub eax, ecx
mov ecx, 0xfe963777
xor edx, edx
div ecx
mov ecx, 0x3177dcbc
xor edx, edx
div ecx
mov ecx, eax
mov eax, 0xffffffff
xor eax, 0xd07b1e5d
add ecx, eax
add ecx, 1
mov eax, ecx
xor eax, 0x627c3bec
mov edx, 0xffffffff
xor edx, 0x627c3bec
and ecx, edx
shl ecx, 1
sub ecx, eax
xor ecx, 0x927275c6
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x8ed70f00
mov eax, 0xffffffff
xor eax, 0xa953f2f8
or ecx, edx
or eax, 0xa953f2f8
xor ecx, 0xffffffff
and ecx, eax
mov eax, ecx
and eax, 0xd0dfa789
shl eax, 1
add ecx, 0xd0dfa789
sub ecx, eax
xor eax, eax
sub eax, 0xe9fa72ba
add ecx, eax
mov edx, 0xffffffff
xor edx, 0x85bc5f89
mov eax, ecx
xor eax, edx
and eax, ecx
imul eax, eax, 0x17be3475
mov ecx, 0x28572776
xor edx, edx
div ecx
and eax, 0x4f8f0682
mov ecx, 0xa01e6b8
xor edx, edx
div ecx
mov edi, 0xffffffff
xor edi, 0x961aa7b0
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x961aa7b0
or eax, 0x961aa7b0
imul eax, edx
add eax, ecx
mov ecx, 0x21253866
xor edx, edx
div ecx
add eax, 0x6fd54fe1
mov ecx, eax
and ecx, 0x96fe5934
xor ecx, 0xffffffff
add eax, 0x96fe5934
add eax, 1
add eax, ecx
sub eax, 0xe68ab3d3
add eax, 0x8e44ba0d
imul ecx, eax, 0x7899c692
or ecx, 0x14c7ba
xor eax, eax
sub eax, 0xb366c5e9
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
and eax, 0xc12c531b
mov edx, 0xffffffff
xor edx, 0xc12c531b
and ecx, edx
or eax, ecx
imul eax, eax, 0xdfa92ff5
imul eax, eax, 0x214efce8
or eax, 0xb86b6f30
sub eax, 0x974e3265
sub eax, 0x9d84af9
add eax, 0x974e3265
mov ecx, eax
xor ecx, 0xa5e69e23
xor ecx, 0xffffffff
and ecx, 0xa5e69e23
shl ecx, 1
sub ecx, 0xa5e69e23
sub eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x6bda1c51
mov ecx, 0xffffffff
xor ecx, 0x186113ca
or eax, edx
or ecx, 0x186113ca
xor eax, 0xffffffff
and eax, ecx
or eax, 0x6f9f787d
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x11bce3d3
mov ecx, 0xffffffff
xor ecx, 0xffededa4
or eax, edx
or ecx, 0xffededa4
xor eax, 0xffffffff
and eax, ecx
and eax, eax
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0xf1f22594
mov edx, 0xffffffff
xor edx, 0xf1f22594
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
imul eax, eax, 0xfff9c469
mov dword [esi + 0xa4], 0xd020dab0
lea ecx, [esi + 0xa4]
mov dword [esi + 0x9c], ecx
or eax, 0x59bf4127
mov dword [esi + 0x60], eax
mov eax, dword [esi + 0x9c]
mov dword [esi + 0x64], eax
mov eax, dword [esi + 0xa4]
mov dword [esi + 0x50], eax
sub eax, 0xa3f92096
je 0x101a78ea
jmp 0x101a7096
mov eax, dword [esi + 0x50]
sub eax, 0xaf8af05d
je 0x101a7cda
jmp 0x101a70a9
mov eax, dword [esi + 0x50]
sub eax, 0xc8fede3f
je 0x101a7902
jmp 0x101a70bc
mov eax, dword [esi + 0x50]
sub eax, 0xd020dab0
je 0x101a7146
jmp 0x101a70cf
mov eax, dword [esi + 0x50]
sub eax, 0x1c424ebf
je 0x101a7166
jmp 0x101a70e2
mov eax, dword [esi + 0x50]
sub eax, 0x2e2634bb
je 0x101a7ce8
jmp 0x101a70f5
mov eax, dword [esi + 0x50]
sub eax, 0x43e888d3
je 0x101a7532
jmp 0x101a7108
mov eax, dword [esi + 0x50]
sub eax, 0x6564820d
je 0x101a784b
jmp 0x101a711b
mov eax, dword [esi + 0x50]
sub eax, 0x759fb8fc
je 0x101a7cf6
jmp 0x101a712e
mov eax, dword [esi + 0x50]
sub eax, 0x7a9b9834
je 0x101a7c35
jmp 0x101a7141
jmp 0x101a7d82
mov eax, dword [esi + 0x64]
mov edi, dword [esi + 0x60]
mov ecx, 0x1c424ebf
mov edx, 0x2e2634bb
cmp edi, 0xe790734
cmovbe ecx, edx
mov dword [eax], ecx
jmp 0x101a7d82
mov eax, dword [0x101d3510]
mov edx, dword [0x101d3514]
mov ecx, eax
and ecx, edx
shl ecx, 1
xor eax, edx
add eax, ecx
mov ecx, eax
xor ecx, 0x2cda23d5
xor ecx, 0xffffffff
or eax, 0x2cda23d5
and eax, ecx
add eax, 0x6ba02e5b
add eax, 0x2469ef0d
sub eax, 0x50ebf12d
add eax, 0x3531b393
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x37987556
mov edx, 0xffffffff
xor edx, 0x37987556
and eax, edx
sub eax, ecx
or eax, 0x6d0d3010
mov ecx, eax
and ecx, 0xa126e167
shl ecx, 1
add eax, 0xa126e167
sub eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
xor eax, 0xffffffff
or ecx, eax
mov eax, 0x9d449ab8
and eax, 0x9d449ab8
xor eax, 0xffffffff
and ecx, eax
xor ecx, 0xffffffff
mov eax, ecx
xor eax, 0xffffffff
mov dword [esi + 0x38], eax
mov edi, 0xffffffff
xor edi, 0x9b651677
mov edx, 0xffffffff
xor edx, 0x256184a9
and eax, 0x256184a9
mov dword [esi + 0x34], eax
and ecx, edx
mov ebx, edi
and ebx, 0x256184a9
mov eax, edx
and eax, 0x9b651677
mov dword [esi + 0x3c], eax
mov eax, dword [esi + 0x34]
or eax, ecx
mov ecx, dword [esi + 0x38]
mov dword [esi + 0x40], eax
mov eax, dword [esi + 0x3c]
or ebx, eax
mov eax, dword [esi + 0x40]
xor eax, ebx
or ecx, edi
xor ecx, 0xffffffff
or edx, 0x256184a9
and ecx, edx
or eax, ecx
mov ecx, 0x579c0fc1
xor edx, edx
div ecx
mov edi, 0xffffffff
xor edi, 0xa646aa3c
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xa646aa3c
or eax, 0xa646aa3c
imul eax, edx
add eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0xb03ed576
mov edi, 0xffffffff
xor edi, 0xb03ed576
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0xb03ed576
or eax, 0xb03ed576
imul eax, edx
add eax, ecx
xor eax, 0xedcdec6a
mov ecx, eax
xor ecx, 0xffffffff
mov dword [esi + 0x4c], ecx
mov edi, 0xffffffff
xor edi, 0xc2f3c10d
mov edx, 0xffffffff
xor edx, 0x69fbab22
and ecx, 0x69fbab22
and eax, edx
mov dword [esi + 0x44], eax
mov ebx, edi
and ebx, 0x69fbab22
mov eax, edx
and eax, 0xc2f3c10d
mov dword [esi + 0x48], eax
mov eax, dword [esi + 0x44]
or ecx, eax
mov eax, dword [esi + 0x48]
or ebx, eax
mov eax, dword [esi + 0x4c]
xor ecx, ebx
or eax, edi
xor eax, 0xffffffff
or edx, 0x69fbab22
and eax, edx
or ecx, eax
xor ecx, 0xeade3d4a
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
or eax, edx
and eax, 0x6039ca5a
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x6039ca5a
mov edi, 0xffffffff
xor edi, 0x6039ca5a
or edx, edi
and ecx, edx
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0xffffffff
sub eax, 0x654d7d15
mov ecx, 0x224944f1
xor edx, edx
div ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0x4abbb706
add eax, ecx
sub eax, 0x77d548c2
add eax, 0x17a38b23
mov edi, 0xffffffff
xor edi, 0xbda5b058
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xbda5b058
or eax, 0xbda5b058
imul eax, edx
add eax, ecx
mov ecx, 0x4e04b883
xor edx, edx
div ecx
mov ecx, eax
add ecx, 0x1396ed58
or ecx, 0x7e1ff15a
xor ecx, 0x2e667578
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
and eax, edx
mov edx, 0xffffffff
xor edx, 0xa5679ae4
mov edi, 0xffffffff
xor edi, 0xa5679ae4
and edx, edi
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
or ecx, 0xa5679ae4
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
imul eax, eax, 0x74bc76a6
mov ecx, 0xcff6982d
xor edx, edx
div ecx
xor eax, 0x228733e8
xor ecx, ecx
sub ecx, 0x69c4e972
sub eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x1b5c4324
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
mov ecx, 0xdeceddcb
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0x1f9e8ec0
mov eax, ecx
and eax, 0x5fbc184a
xor eax, 0xffffffff
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x5fbc184a
or ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x69285877
xor edx, edx
div ecx
mov ecx, 0x1f13ff9f
xor edx, edx
div ecx
mov ecx, eax
mov edx, 0xffffffff
xor edx, 0xf3a84290
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, 0xd4c1c2bf
xor edx, edx
div ecx
imul eax, eax, 0xf4d19fda
mov edx, eax
xor edx, 0xffffffff
and edx, 0xc65d7154
mov edi, 0xffffffff
xor edi, 0xc65d7154
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0xc65d7154
or eax, 0xc65d7154
imul eax, edx
add eax, ecx
xor eax, 0xaa199ec5
mov ecx, 0x6416a500
xor edx, edx
div ecx
mov edi, eax
mov eax, dword [esi + 0x64]
and edi, 0x1cc98cc6
mov ebx, 0xffffffff
xor ebx, 0x69a41c44
mov edx, edi
and edx, ebx
mov ecx, edi
or ecx, ebx
xor ecx, 0xffffffff
imul ecx, edx
mov edx, edi
and edx, 0x69a41c44
or edi, 0x69a41c44
imul edi, edx
add edi, ecx
xor edi, 0x9028691c
sub edi, 0xa8e2d149
and edi, 0xe0d5e382
and edi, 0x7757be9d
mov ecx, 0x2e2634bb
mov edx, 0x43e888d3
cmp edi, 0x62ef66c2
cmovbe ecx, edx
mov dword [eax], ecx
jmp 0x101a7d82
mov ecx, dword [0x101d3518]
mov edx, dword [0x101d351c]
mov edi, ecx
xor edi, edx
xor edi, 0xffffffff
mov eax, edx
and eax, edi
shl eax, 1
sub eax, edx
sub ecx, eax
mov eax, ecx
or eax, eax
xor eax, 0xffffffff
mov edx, 0x897d5ff1
or edx, 0x897d5ff1
xor edx, 0xffffffff
or eax, edx
xor eax, 0xffffffff
or ecx, 0x897d5ff1
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0xc44fbe2b
xor edx, edx
div ecx
mov ecx, eax
mov edx, ecx
xor edx, 0xffffffff
and edx, 0xdb51ba40
mov edi, 0xffffffff
xor edi, 0xdb51ba40
mov eax, ecx
and eax, edi
imul eax, edx
mov edx, ecx
and edx, 0xdb51ba40
or ecx, 0xdb51ba40
imul ecx, edx
add ecx, eax
and ecx, 0x377dfc3
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x8157bc68
mov edx, 0xffffffff
xor edx, 0x8157bc68
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x739c8b85
mov edi, 0xffffffff
xor edi, 0x739c8b85
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0x739c8b85
or eax, 0x739c8b85
imul eax, edx
add eax, ecx
and eax, 0x50947d40
add eax, 0xc35f7c73
mov ecx, 0x325b7a72
xor edx, edx
div ecx
mov ecx, 0xb30cdb94
xor edx, edx
div ecx
or eax, 0x9eb1950a
imul eax, eax, 0xf74f4c76
mov ecx, 0xe6cd8357
xor edx, edx
div ecx
add eax, 0x9ec31c2d
and eax, 0x85e071a4
mov ecx, 0xffffffff
xor ecx, 0x8e439bc8
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x3da6ab7d
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
add eax, 0xae03e3ce
sub eax, 0x1c6c1caa
mov ecx, eax
and ecx, 0x59a9bac5
shl ecx, 1
add eax, 0x59a9bac5
sub eax, ecx
mov ecx, 0xff97a4cc
xor edx, edx
div ecx
mov ebx, eax
mov eax, dword [esi + 0x64]
xor ecx, ecx
sub ecx, 0x68b9f6d1
sub ebx, ecx
xor ecx, ecx
sub ecx, 0xc46c0d5e
sub ebx, ecx
and ebx, 0x25ab5f35
mov ecx, ebx
xor ecx, 0x7f10e8e7
xor ecx, 0xffffffff
and ecx, 0x7f10e8e7
shl ecx, 1
sub ecx, 0x7f10e8e7
sub ebx, ecx
and ebx, 0x1e2c1bdd
xor ecx, ecx
sub ecx, 0x24470349
sub ebx, ecx
or ebx, 0xb2f271df
xor ebx, 0x72fb9daf
add ebx, 0xbff562cd
mov ecx, ebx
and ecx, 0x1de4712c
shl ecx, 1
xor ebx, 0x1de4712c
add ebx, ecx
mov ecx, ebx
xor ecx, 0xffffffff
and ecx, 0x645da247
mov edi, 0xffffffff
xor edi, 0x645da247
and ebx, edi
mov edx, 0xffffffff
xor edx, 0x8beb2658
and edx, 0x645da247
and edi, 0x8beb2658
or ecx, ebx
or edx, edi
xor ecx, edx
sub ecx, 0xb5372d75
imul ecx, ecx, 0x604bb73f
sub ecx, 0xf8a2f157
mov edx, ecx
and edx, 0x24c73813
xor edx, 0xffffffff
add ecx, 0x24c73813
add ecx, 1
add ecx, edx
and ecx, 0xb86a5ae0
or ecx, 0xd406414f
imul ecx, ecx, 0x1dc8e214
imul ecx, ecx, 0x4e7317c5
or ecx, 0x15914fc
mov edx, ecx
and edx, 0x387bc7fa
shl edx, 1
add ecx, 0x387bc7fa
sub ecx, edx
mov edx, ecx
add edx, 1
xor ecx, 0xffffffff
or ecx, 0x108f4f5a
add ecx, edx
or ecx, 0x6ec88903
mov edx, ecx
xor edx, 0x92d11d7c
xor edx, 0xffffffff
and edx, 0x92d11d7c
shl edx, 1
sub edx, 0x92d11d7c
sub ecx, edx
sub ecx, 0x5bacc156
imul ecx, ecx, 0xf4741e58
xor ecx, 0xffffffff
mov edi, 0xffffffff
xor edi, 0xc6166ce4
mov edx, 0xffffffff
xor edx, 0x79b67716
or ecx, edi
or edx, 0x79b67716
xor ecx, 0xffffffff
and ecx, edx
mov edi, ecx
xor edi, 0xffffffff
and edi, 0x1c7928e9
mov ebx, 0xffffffff
xor ebx, 0x1c7928e9
mov edx, ecx
and edx, ebx
imul edx, edi
mov edi, ecx
and edi, 0x1c7928e9
or ecx, 0x1c7928e9
imul ecx, edi
add ecx, edx
imul edi, ecx, 0x9d9534f8
mov ecx, 0x6564820d
mov edx, 0xc8fede3f
cmp edi, 0x71067952
cmove ecx, edx
mov dword [eax], ecx
jmp 0x101a7d82
mov edi, 0x41202090
push eax
mov ebx, esp
push eax
mov eax, esp
mov dword [esi + 0x28], eax
push eax
mov edx, esp
push eax
mov ecx, esp
sub esp, 8
mov eax, esp
and eax, 0xfffffff8
mov dword [esi + 0x2c], eax
mov esp, eax
mov eax, dword [esi + 0x54]
mov dword [ebx], eax
mov eax, dword [esi + 0x28]
mov ebx, dword [esi + 0x5c]
mov dword [eax], ebx
mov byte [edx], 1
mov byte [ecx], 0
mov ecx, dword [eax]
call fcn.10080610
mov ecx, dword [esi + 0x54]
mov ebx, eax
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x30], ebx
mov ebx, edx
mov edx, dword [esi + 0x30]
movd xmm1, ebx
movd xmm0, edx
punpckldq xmm0, xmm1
movlpd qword [esi + 0x70], xmm0
fild qword [esi + 0x70]
fstp qword [esi + 0x68]
movsd xmm0, qword [esi + 0x68]
movsd xmm1, qword [0x101c7070]
divsd xmm0, xmm1
movsd qword [eax], xmm0
sub esp, 4
mov dword [esp], eax
call fcn.101a88e0
mov eax, dword [esi + 0x64]
mov ecx, 0xa3f92096
mov edx, 0xc8fede3f
cmp edi, 0xd64f7d5b
cmova ecx, edx
mov dword [eax], ecx
jmp 0x101a7d82
mov ecx, dword [esi + 0xa8]
xor ecx, ebp
call fcn.101b1b88
mov eax, dword [esi + 0x58]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [0x101d3528]
add eax, dword [0x101d352c]
or eax, 0x8faba66e
or eax, 0x8de9383a
mov ecx, eax
xor ecx, 0x16f66fdd
xor ecx, 0xffffffff
and ecx, 0x16f66fdd
shl ecx, 1
sub ecx, 0x16f66fdd
sub eax, ecx
mov ecx, 0x9d627c9c
xor edx, edx
div ecx
imul eax, eax, 0xe92896a5
mov ecx, 0xffffffff
xor ecx, 0x4b5fa792
add eax, ecx
add eax, 1
and eax, 0x2bba5f58
mov ecx, 0x3a0647af
xor edx, edx
div ecx
or eax, eax
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0x5973f5c4
mov edx, 0xffffffff
xor edx, 0x5973f5c4
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0xe6209fa6
xor edx, edx
div ecx
mov edi, eax
mov ecx, edi
xor ecx, 0xffffffff
and ecx, 0xd425540b
mov edx, 0xffffffff
xor edx, 0xd425540b
and edi, edx
mov eax, 0xffffffff
xor eax, 0x656a19c9
and eax, 0xd425540b
and edx, 0x656a19c9
or ecx, edi
or eax, edx
xor ecx, eax
sub ecx, 0x143c05c1
mov edx, 0xffffffff
xor edx, 0x46339529
mov eax, ecx
and eax, edx
mov edx, ecx
xor edx, 0x46339529
add ecx, edx
sub ecx, eax
sub ecx, 0x93a1976c
and ecx, ecx
xor ecx, 0xffffffff
mov eax, 0xffffffff
xor eax, 0xc668ae36
mov edx, 0xffffffff
xor edx, 0xc668ae36
or eax, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
or ecx, eax
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x441b8db7
mov edx, 0xffffffff
xor edx, 0x441b8db7
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
imul eax, eax, 0x19e5ff5
or eax, 0x900aa990
xor eax, 0x588f130f
mov edi, 0xffffffff
xor edi, 0xd21adac7
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xd21adac7
or eax, 0xd21adac7
imul eax, edx
add eax, ecx
sub eax, 0xf665fef
mov ecx, 0x89cf9b27
xor edx, edx
div ecx
mov ecx, 0x3a085e1c
xor edx, edx
div ecx
mov ecx, 0x93230ef6
xor edx, edx
div ecx
xor eax, 0xfea8f6da
mov ecx, 0x5bf8c432
xor edx, edx
div ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x610934e5
mov edi, 0xffffffff
xor edi, 0x610934e5
mov ecx, eax
and ecx, edi
imul ecx, edx
mov edx, eax
and edx, 0x610934e5
or eax, 0x610934e5
imul eax, edx
add eax, ecx
or eax, 0x4eb826ae
sub eax, 0x4060b344
imul eax, eax, 0xa2c511a9
xor eax, 0x3ac4f071
imul eax, eax, 0x6b19d993
mov ecx, eax
xor ecx, 0x959754a2
mov edx, 0xffffffff
xor edx, 0x959754a2
and eax, edx
shl eax, 1
sub eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xaf1f5ca8
add eax, ecx
add eax, 1
mov ecx, 0x9458093b
xor edx, edx
div ecx
and eax, 0x7c2b54
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x8fa91030
mov edx, 0xffffffff
xor edx, 0x8fa91030
and eax, edx
sub eax, ecx
add eax, 0xd0a5961c
mov ecx, eax
and ecx, 0xf3fbf1f1
shl ecx, 1
add eax, 0xf3fbf1f1
sub eax, ecx
add eax, 0x2ccf29f5
add eax, 0x615a5eb6
sub eax, 0x69716849
sub eax, 0x615a5eb6
xor ecx, ecx
sub ecx, 0xb8129ac5
add eax, ecx
sub eax, 0x4f8e32f8
add eax, 0xf95aa2fd
add eax, 0x4f8e32f8
mov ecx, eax
and ecx, 0x498c3891
xor eax, 0x498c3891
or ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov dword [esi + 0x1c], eax
mov edi, 0xffffffff
xor edi, 0xe303876e
mov edx, 0xffffffff
xor edx, 0xdec4a9ed
and eax, 0xdec4a9ed
mov dword [esi + 0x18], eax
and ecx, edx
mov ebx, edi
and ebx, 0xdec4a9ed
mov eax, edx
and eax, 0xe303876e
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, 0xdec4a9ed
and ecx, edx
or eax, ecx
or eax, 0x1109b645
mov ecx, 0xeffd570e
xor edx, edx
div ecx
mov edi, eax
mov eax, dword [esi + 0x64]
add edi, 0x91160233
mov ecx, 0xffffffff
xor ecx, 0x2267afc7
xor edx, edx
sub edx, 1
sub ecx, edx
sub edi, ecx
sub edi, 0x574fa157
mov ecx, 0x7a9b9834
mov edx, 0x759fb8fc
cmp edi, 0x302b4339
cmove ecx, edx
mov dword [eax], ecx
jmp 0x101a7d82
mov edi, 0x85b6818e
push eax
mov ebx, esp
push eax
mov eax, esp
mov dword [esi + 0xc], eax
push eax
mov edx, esp
push eax
mov ecx, esp
sub esp, 8
mov eax, esp
and eax, 0xfffffff8
mov dword [esi + 0x10], eax
mov esp, eax
mov eax, dword [esi + 0x54]
mov dword [ebx], eax
mov eax, dword [esi + 0xc]
mov ebx, dword [esi + 0x5c]
mov dword [eax], ebx
mov byte [edx], 1
mov byte [ecx], 0
mov ecx, dword [eax]
call fcn.10080610
mov ecx, dword [esi + 0x54]
mov ebx, eax
mov eax, dword [esi + 0x10]
mov dword [esi + 0x14], ebx
mov ebx, edx
mov edx, dword [esi + 0x14]
movd xmm1, ebx
movd xmm0, edx
punpckldq xmm0, xmm1
movlpd qword [esi + 0x80], xmm0
fild qword [esi + 0x80]
fstp qword [esi + 0x78]
movsd xmm0, qword [esi + 0x78]
movsd xmm1, qword [0x101c7070]
divsd xmm0, xmm1
movsd qword [eax], xmm0
sub esp, 4
mov dword [esp], eax
call fcn.101a88e0
mov eax, dword [esi + 0x64]
mov ecx, 0x7a9b9834
mov edx, 0xaf8af05d
cmp edi, 0x86da4a7b
cmovb ecx, edx
mov dword [eax], ecx
jmp 0x101a7d82
mov eax, dword [esi + 0x64]
mov dword [eax], 0x6564820d
jmp 0x101a7d82
mov eax, dword [esi + 0x64]
mov dword [eax], 0x1c424ebf
jmp 0x101a7d82
push eax
mov ebx, esp
push eax
mov eax, esp
push eax
mov edx, esp
push eax
mov ecx, esp
sub esp, 8
mov edi, esp
and edi, 0xfffffff8
mov dword [esi + 4], edi
mov esp, edi
mov edi, dword [esi + 0x54]
mov dword [ebx], edi
mov edi, dword [esi + 0x5c]
mov dword [eax], edi
mov byte [edx], 1
mov byte [ecx], 0
mov ecx, dword [eax]
call fcn.10080610
mov ecx, dword [esi + 0x54]
mov edi, eax
mov eax, dword [esi + 4]
mov dword [esi + 8], edi
mov edi, edx
mov edx, dword [esi + 8]
movd xmm1, edi
movd xmm0, edx
punpckldq xmm0, xmm1
movlpd qword [esi + 0x90], xmm0
fild qword [esi + 0x90]
fstp qword [esi + 0x88]
movsd xmm0, qword [esi + 0x88]
movsd xmm1, qword [0x101c7070]
divsd xmm0, xmm1
movsd qword [eax], xmm0
sub esp, 4
mov dword [esp], eax
call fcn.101a88e0
mov eax, dword [esi + 0x64]
mov dword [eax], 0x7a9b9834
jmp 0x101a707d