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

Disassembly:
sub esp, 0x90
mov ecx, dword [esp + 0x9c]
push ebx
push ebp
mov eax, ecx
push esi
mov esi, dword [esp + 0xa0]
or eax, 0x6010ebcc
and ecx, 0x9fef1433
push edi
xor edi, edi
sub ecx, eax
xor ebp, ebp
xor ebx, ebx
mov dword [esp + 0x78], edi
mov dword [esp + 0x20], edi
mov dword [esp + 0x30], edi
mov dword [esp + 0x3c], edi
mov dword [esp + 0x28], edi
mov dword [esp + 0x40], edi
mov dword [esp + 0x48], edi
mov dword [esp + 0x24], edi
mov dword [esp + 0x2c], edi
mov dword [esp + 0x34], edi
mov dword [esp + 0x58], edi
mov dword [esp + 0x60], edi
mov dword [esp + 0x38], edi
mov dword [esp + 0x5c], edi
mov dword [esp + 0x54], edi
mov dword [esp + 0x4c], edi
mov dword [esp + 0x14], edi
mov dword [esp + 0x1c], edi
mov dword [esp + 0x18], edi
mov dword [esp + 0x10], edi
mov dword [esp + 0x88], edi
mov dword [esp + 0x84], 0x8bfd370a
mov dword [esp + 0x68], 0x48eb3af5
mov dword [esp + 0x64], 0x6ef79488
mov dword [esp + 0x6c], 0xa9622a5b
mov dword [esp + 0x70], 0x76d5bd06
mov dword [esp + 0x80], 0xfc2d4200
mov dword [esp + 0x50], 0xee43ea97
mov dword [esp + 0x74], 0xa1bc2365
mov dword [esp + 0x44], 0x4c0625a7
add ecx, 0x55478e76
mov dword [esp + 0x7c], ebp
lea esp, [esp]
lea eax, [ecx + 0xac95d5e]
cmp eax, 0x20
ja case.0x1000e23f.180968767
jmp dword [eax*4 + 0x1000eb0c]
mov ecx, dword [esp + 0x2c]
add ecx, 0xae2b7c50
mov eax, 0xbfffffff
imul ecx
sar edx, 0x1d
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x7fffffff
add ecx, eax
jmp 0x1000e230
mov ecx, dword [esi + 0x28]
mov edx, dword [esi + 0xa0]
xor eax, eax
mov dword [esi + 0x98], eax
mov dword [esi + 0x6c], eax
mov eax, dword [esi + 0x70]
mov dword [esp + 0x94], ecx
mov ecx, dword [esp + 0xb0]
mov dword [esp + 0x8c], edx
mov edx, dword [ecx]
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0xb4]
mov ecx, dword [eax]
mov dword [esp + 0x90], edx
lea edx, [esp + 0x8c]
push edx
mov dword [esp + 0xa0], ecx
call fcn.100239e0
imul eax, eax, 0x3fdef7d5
add eax, 0x1023a131
imul eax, eax, 0x387f7683
mov ecx, 0xdd935259
sub ecx, eax
mov eax, dword [esp + 0x5c]
add eax, 0x562fd234
cdq
mov ebp, 0x7fffffff
idiv ebp
mov eax, dword [esp + 0x3c]
add eax, 0x1ef3a488
xor dword [esp + 0x64], 0x9b6736ae
xor dword [esp + 0x60], 0x36d3b6c4
xor dword [esp + 0x1c], 0xfd521bdf
xor dword [esp + 0x14], 0x612c2645
add esp, 4
mov dword [esp + 0x54], 0xead63b9f
mov dword [esp + 0x4c], 0x637fc02b
mov dword [esp + 0x58], edx
cdq
idiv ebp
lea eax, [ecx - 0x7fbc4046]
mov ebp, 0x9e1e6963
mov dword [esp + 0x38], edx
mov edx, 0x7fbc4046
sub edx, ecx
or eax, edx
mov edx, ecx
and edx, 0x8043bfba
sub eax, edx
mov edx, dword [esp + 0x1c]
or ecx, 0x7fbc4045
lea eax, [eax + ecx - 0x7fbc4045]
shr eax, 0x1f
not eax
and eax, 1
mov ecx, 0
sete cl
xor edx, 0xea894fc6
imul ecx, edx
mov edx, dword [esp + 0x1c]
xor edx, 0xea894fde
imul edx, eax
add ecx, edx
jmp 0x1000e228
mov ecx, dword [esp + 0x3c]
mov dword [esi + 0x78], 0x10
add ecx, 0xe7cd12c
jmp 0x1000e250
mov ecx, dword [esp + 0x38]
xor eax, eax
mov dword [esi + 0xa0], eax
mov dword [esi + 0x70], eax
mov dword [esp + 0x78], eax
add ecx, 0x1a80149
jmp 0x1000e250
mov ecx, dword [esi + 0xa0]
push ecx
call fcn.10012c90
mov ecx, dword [esp + 0x5c]
add esp, 4
add ecx, 0xe66fc5d6
jmp 0x1000e250
mov eax, dword [esp + 0x3c]
add eax, 0x8b3b4fff
cdq
mov ecx, 0x7fffffff
idiv ecx
mov eax, dword [esp + 0x68]
add eax, 0xd1a28694
xor dword [esp + 0x30], 0xbd77490f
xor dword [esp + 0x28], 0xfe1ee8f3
xor dword [esp + 0x64], 0x9df21243
xor dword [esp + 0x50], 0x82ea44b2
mov dword [esp + 0x3c], edx
cdq
idiv ecx
mov eax, dword [esi + 0x68]
cmp eax, 4
mov dword [esp + 0x68], edx
jne 0x1000e436
mov eax, 1
jmp 0x1000e440
xor edx, edx
cmp eax, 5
sete dl
mov eax, edx
mov edx, dword [esp + 0x80]
xor ecx, ecx
test eax, eax
sete cl
mov eax, ecx
xor ecx, ecx
test eax, eax
sete cl
xor edx, 0xc6036272
imul ecx, edx
mov edx, dword [esp + 0x80]
xor edx, 0xc6036262
imul edx, eax
add ecx, edx
jmp 0x1000e230
mov ecx, dword [esp + 0x28]
xor ecx, 0x839c0749
jmp 0x1000e230
mov ecx, dword [esp + 0x64]
xor ecx, 0x87ca7212
jmp 0x1000e230
mov eax, dword [esp + 0xa8]
mov ecx, dword [esp + 0xac]
mov dword [esi + 0x98], eax
mov eax, dword [esp + 0x84]
add eax, 0x15217ef3
cdq
mov dword [esi + 0x6c], ecx
mov ecx, 0x7fffffff
idiv ecx
mov eax, dword [esp + 0x68]
add eax, 0x6df239f6
xor dword [esp + 0x64], 0x81f95662
xor dword [esp + 0x70], 0xe60f528d
xor dword [esp + 0x80], 0xcf1882dc
xor dword [esp + 0x50], 0xa534ae0a
xor dword [esp + 0x74], 0x4cc71682
xor dword [esp + 0x44], 0xf5d16927
mov dword [esp + 0x20], 0x34d77c28
mov dword [esp + 0x30], 0xce04fccb
mov dword [esp + 0x3c], 0x392a14dd
mov dword [esp + 0x28], 0xe12a6769
mov edi, 0xdc40746f
mov ebx, 0xb02546d4
mov dword [esp + 0x84], edx
cdq
idiv ecx
mov eax, dword [esp + 0x6c]
add eax, 0x3d4d4ca0
mov dword [esp + 0x68], edx
cdq
idiv ecx
xor ecx, ecx
cmp dword [esi + 0x68], 3
setne cl
mov dword [esp + 0x6c], edx
xor edx, edx
test ecx, ecx
sete dl
imul ecx, ecx, 0xf536a2a7
imul edx, edx, 0xac95d4c
sub ecx, edx
jmp 0x1000e230
mov ecx, dword [esp + 0x40]
xor eax, eax
mov dword [esi + 0xa8], eax
mov dword [esi + 0x74], eax
xor ecx, 0xb96edada
jmp 0x1000e230
mov dword [esp + 0x78], 0
lea ecx, [edi + 0xd7dd96d]
jmp 0x1000e250
mov ecx, dword [esi + 0x78]
push ecx
lea edx, [esi + 0x88]
push 0
push edx
call fcn.100131e0
mov ecx, dword [esp + 0x30]
add esp, 0xc
mov dword [esi + 0x78], 0
xor ecx, 0x628dcddc
jmp 0x1000e230
mov eax, dword [esp + 0x3c]
add eax, 0x22546ca0
cdq
mov ecx, 0x7fffffff
idiv ecx
mov eax, dword [esi + 0xb8]
xor dword [esp + 0x30], 0x8f45dcd7
xor dword [esp + 0x28], 0x699e2a7a
mov dword [esp + 0x3c], edx
lea edx, [esi + 0x88]
push edx
push eax
call fcn.1001ec70
mov edx, dword [esp + 0x58]
add esp, 8
neg eax
sbb eax, eax
inc eax
mov ecx, 0
sete cl
xor edx, 0x3caba29e
imul ecx, edx
mov edx, dword [esp + 0x50]
xor edx, 0x3caba28b
imul edx, eax
add ecx, edx
jmp 0x1000e230
mov eax, dword [esp + 0x58]
add eax, 0x1baaecec
cdq
mov ecx, 0x7fffffff
idiv ecx
mov eax, dword [esp + 0x38]
add eax, 0xf06aeec5
xor dword [esp + 0x60], 0x25ef8835
mov dword [esp + 0x58], edx
cdq
idiv ecx
mov eax, dword [esi + 0xa0]
test eax, eax
mov dword [esp + 0x38], edx
je 0x1000e66f
xor edx, edx
cmp eax, dword [esp + 0xa8]
setne dl
mov eax, edx
jmp 0x1000e671
xor eax, eax
mov edx, dword [esp + 0x18]
xor ecx, ecx
test eax, eax
sete cl
mov eax, ecx
xor ecx, ecx
test eax, eax
sete cl
xor edx, 0xc1a2195e
imul ecx, edx
mov edx, dword [esp + 0x18]
xor edx, 0xc1a2194e
imul edx, eax
add ecx, edx
jmp 0x1000e230
mov eax, dword [esp + 0x2c]
add eax, 0xca0af62
cdq
mov ecx, 0x7fffffff
idiv ecx
mov eax, dword [esi + 0x68]
xor dword [esp + 0x24], 0x32ca912
xor dword [esp + 0x34], 0xfdff46dc
xor dword [esp + 0x1c], 0xef6d4664
cmp eax, 4
mov dword [esp + 0x5c], 0x82b405a0
mov dword [esp + 0x18], 0xd9b32ce8
mov dword [esp + 0x2c], edx
jne 0x1000e6ee
mov eax, 1
jmp 0x1000e6f8
xor edx, edx
cmp eax, 5
sete dl
mov eax, edx
mov edx, dword [esp + 0x14]
xor ecx, ecx
test eax, eax
sete cl
mov eax, ecx
xor ecx, ecx
test eax, eax
sete cl
xor edx, 0x2cc3c461
imul ecx, edx
mov edx, dword [esp + 0x14]
xor edx, 0x2cc3c46e
imul edx, eax
add ecx, edx
jmp 0x1000e230
mov ecx, dword [esp + 0x30]
xor ecx, 0x900cbbb
jmp 0x1000e230
mov ecx, dword [esp + 0x4c]
xor ecx, 0x3da05ed9
jmp 0x1000e230
mov ecx, dword [esp + 0x88]
xor eax, eax
mov dword [esi + 0xa0], eax
mov dword [esi + 0x70], eax
mov eax, dword [esp + 0xb0]
mov dword [eax], ecx
mov dword [esp + 0x78], 1
lea ecx, [ebp + 0x5d1e1b95]
jmp 0x1000e250
mov ecx, dword [esi + 0xb8]
mov eax, dword [esi + 0x78]
mov edx, dword [esi + 0xc8]
push eax
mov dword [esi + 0xa8], ecx
lea ecx, [esi + 0x88]
push 1
push ecx
mov dword [esi + 0x74], edx
call fcn.100131e0
mov ecx, dword [esp + 0x90]
add esp, 0xc
add ecx, 0x5417ecbe
jmp 0x1000e250
mov ecx, dword [esp + 0x34]
xor dword [esp + 0x5c], 0x3ac8bee1
xor dword [esp + 0x1c], 0x74aeb07b
xor ecx, 0x2196b9df
xor dword [esp + 0x18], 0x10758ccf
mov dword [esp + 0x58], 0x9cec1daf
mov dword [esp + 0x60], 0xbc138943
mov dword [esp + 0x38], 0xe4300e27
mov dword [esp + 0x10], 0xb1cfe5ee
jmp 0x1000e230
mov ecx, dword [esp + 0x60]
xor ecx, 0xf7ad957d
jmp 0x1000e230
mov eax, dword [esp + 0x54]
add eax, 0x64ae6bc7
cdq
mov ebp, 0x7fffffff
idiv ebp
mov eax, dword [esp + 0x7c]
add eax, 0xa903c4df
mov ecx, dword [esp + 0x5c]
xor dword [esp + 0x4c], 0xfd9ec6b4
xor ecx, 0x7b99af39
mov dword [esp + 0x54], edx
cdq
idiv ebp
xor dword [esp + 0x10], 0xeaffb11e
mov ebp, edx
jmp 0x1000e228
lea eax, [edi - 0x42af29c7]
cdq
mov ecx, 0x7fffffff
idiv ecx
mov eax, dword [esp + 0x48]
add eax, 0xc88fe733
xor dword [esp + 0x20], 0x59db2f1a
xor dword [esp + 0x40], 0x7f2172a8
xor dword [esp + 0x14], 0x49fe37fc
mov dword [esp + 0x24], 0xeed08474
mov dword [esp + 0x2c], 0x85cf9718
mov dword [esp + 0x34], 0x5ad79b07
xor ebx, 0xe1a0092a
mov edi, edx
cdq
idiv ecx
mov dword [esp + 0x48], edx
lea edx, [esi + 0x68]
push edx
call fcn.100222b0
mov edx, dword [esp + 0x48]
add esp, 4
neg eax
sbb eax, eax
neg eax
mov ecx, 0
sete cl
xor edx, 0x2248de24
imul ecx, edx
mov edx, dword [esp + 0x44]
xor edx, 0x2248de49
imul edx, eax
add ecx, edx
jmp 0x1000e230
mov eax, dword [0x10041a70]
push eax
call fcn.1001d790
mov ecx, dword [esp + 0x70]
add esp, 4
add ecx, 0x26a6d156
jmp 0x1000e250
mov ecx, dword [esi + 0x70]
mov edx, dword [esi + 0xa0]
push ecx
push 0
push edx
call fcn.100131e0
mov eax, dword [esi + 0xa0]
push eax
call fcn.10012c90
mov ecx, dword [esp + 0x64]
add esp, 0x10
add ecx, 0x147c0eb2
jmp 0x1000e250
mov eax, dword [esp + 0x6c]
add eax, 0xe7e05a67
cdq
mov ecx, 0x7fffffff
idiv ecx
lea eax, [edi + 0x4e277ea8]
xor dword [esp + 0x20], 0xaa2b1c34
xor dword [esp + 0x70], 0xaa60ae51
xor dword [esp + 0x44], 0x6ea93008
xor ebx, 0x8d9bf7be
mov dword [esp + 0x40], 0xbde5f0cb
mov dword [esp + 0x48], 0xc1564ef1
mov dword [esp + 0x14], 0x7017a0f7
mov dword [esp + 0x6c], edx
cdq
idiv ecx
xor eax, eax
cmp dword [esi + 0x68], 5
mov edi, edx
jne 0x1000e98f
cmp dword [0x10041a70], 1
sete al
xor edx, edx
test eax, eax
sete dl
xor ecx, ecx
mov eax, edx
mov edx, dword [esp + 0x74]
test eax, eax
sete cl
xor edx, 0x184d975e
imul ecx, edx
mov edx, dword [esp + 0x74]
xor edx, 0x184d9727
imul edx, eax
add ecx, edx
jmp 0x1000e230
mov eax, dword [esp + 0x90]
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x54]
add eax, 0x9135ec9b
cdq
mov ecx, 0x7fffffff
idiv ecx
lea eax, [ebp + 0x50f658e6]
xor dword [esp + 0x4c], 0x5677faf5
mov dword [esp + 0x54], edx
cdq
idiv ecx
mov eax, dword [esi + 0xa0]
test eax, eax
mov ebp, edx
mov dword [esp + 0x7c], ebp
je 0x1000ea14
xor edx, edx
cmp eax, dword [esp + 0xa8]
setne dl
mov eax, edx
jmp 0x1000ea16
xor eax, eax
mov edx, dword [esp + 0x10]
xor ecx, ecx
test eax, eax
sete cl
mov eax, ecx
xor ecx, ecx
test eax, eax
sete cl
xor edx, 0xcf2ad00f
imul ecx, edx
mov edx, dword [esp + 0x10]
xor edx, 0xcf2ad007
imul edx, eax
add ecx, edx
jmp 0x1000e230
mov ecx, dword [esp + 0x20]
xor ecx, 0x3211edc4
jmp 0x1000e230
mov ecx, dword [esp + 0x68]
add ecx, 0x6cb6a72a
jmp 0x1000e250
mov ecx, dword [esp + 0x48]
add ecx, 0xaff4ce19
jmp 0x1000e250
mov ecx, dword [esp + 0x70]
xor ecx, 0xcf8ce362
jmp 0x1000e230
mov eax, dword [esp + 0x48]
add eax, 0xbb5b9e73
cdq
mov ecx, 0x7fffffff
idiv ecx
mov eax, dword [esp + 0x2c]
add eax, 0xb49adfeb
xor dword [esp + 0x40], 0x8e9cfa09
xor dword [esp + 0x24], 0x7a47420f
xor dword [esp + 0x34], 0x7388c6a7
xor dword [esp + 0x14], 0xe01cf1c7
mov dword [esp + 0x1c], 0x847c1b76
mov dword [esp + 0x48], edx
cdq
idiv ecx
xor eax, eax
cmp dword [esi + 0x68], 3
setne al
xor ecx, ecx
test eax, eax
sete cl
mov dword [esp + 0x2c], edx
mov edx, ebx
xor edx, 0x29281aeb
imul ecx, edx
mov edx, ebx
xor edx, 0x29281aff
imul edx, eax
add ecx, edx
jmp 0x1000e230
mov eax, dword [esp + 0x78]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x90
ret