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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x80
push ebx
mov ebx, dword [esp + 0xc]
mov eax, 0x7dc8c7d
push ebp
mov ebp, dword [esp + 0x14]
push esi
push edi
mov edi, dword [esp + 0x14]
mov esi, 0x1b2a0886
jmp 0x3856530
cmp eax, 0x1bc5b985
jg 0x3856811
je 0x38567f1
cmp eax, 0xe0e6cf9
jg 0x3856695
je 0x3856d40
cmp eax, 0x6f6e913
jg 0x3856643
je 0x3856634
cmp eax, 0x3e9ea02
jg 0x38565bb
je 0x38565a2
cmp eax, 0x302637a
je 0x385658e
cmp eax, 0x3c760dd
jne 0x3856c24
mov ecx, dword [esp + 0x2c]
call fcn.038540f0
mov eax, 0x391f41b6
jmp 0x3856530
call fcn.038595b0
test eax, eax
je 0x3856b72
mov eax, 0x2866c6e2
jmp 0x3856530
mov eax, dword [0x385e464]
mov eax, dword [eax + 0x3c]
mov dword [esp + 0x8c], eax
mov eax, 0x3b5c1fcf
jmp 0x3856530
cmp eax, 0x5994a93
je 0x38565fe
cmp eax, 0x60b0811
jne 0x3856c24
lea ecx, [esp + 0x3c]
call fcn.0385b230
test eax, eax
je 0x38565f4
xorps xmm0, xmm0
mov edi, 0x1f0d9569
movlpd qword [esp + 0x18], xmm0
mov ebp, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x14], edi
mov eax, 0x1f12369e
jmp 0x3856530
call fcn.038581b0
mov ecx, dword [0x385e464]
test eax, eax
je 0x385661e
cmp dword [ecx + 0x68], 0
mov eax, 0x16e82f7c
cmovne eax, esi
jmp 0x3856530
cmp dword [ecx + 0x68], 0
mov eax, 0xa239b2c
mov ecx, 0x1a91d3ea
cmovne eax, ecx
jmp 0x3856530
call fcn.03858750
mov eax, 0xddbf28a
jmp 0x3856530
cmp eax, 0xd94f613
jg 0x385667b
je 0x3856d33
cmp eax, 0x7dc8c7d
je 0x3856671
cmp eax, 0xa239b2c
jne 0x3856c24
call fcn.03858e20
mov eax, 0x39a780e8
jmp 0x3856530
mov eax, 0x3ac1c62e
jmp 0x3856530
cmp eax, 0xddbf28a
jne 0x3856c24
call fcn.038584d0
mov eax, 0xd94f613
jmp 0x3856530
cmp eax, 0x16e82f7c
jg 0x385677b
je 0x3856739
cmp eax, 0x1102920a
jg 0x385671f
je 0x38566f1
cmp eax, 0xe90e0d7
je 0x38566e2
cmp eax, 0x102260a6
jne 0x3856c24
call fcn.03857dd0
mov ecx, dword [0x385e464]
mov eax, 0xddbf28a
cmp dword [ecx + 0x68], 0
mov ecx, 0x6f6e913
cmovne eax, ecx
jmp 0x3856530
call fcn.038584b0
mov eax, 0x60b0811
jmp 0x3856530
lea edx, [esp + 0x28]
mov ecx, 0x385d2f0
call fcn.03853200
mov esi, eax
lea ecx, [esp + 0x24]
mov dword [esp + 0x24], esi
call fcn.038518a0
mov ecx, esi
call fcn.03853350
mov eax, 0x24ef030d
jmp 0x3856521
cmp eax, 0x15f9b2f8
jne 0x3856c24
call fcn.03856df0
mov eax, 0x302637a
jmp 0x3856530
call fcn.03859ce0
mov eax, dword [0x385db9c]
mov edi, 0x1f911fc3
mov dword [esp + 0x14], edi
test eax, eax
jne 0x385676b
mov ecx, 0x802173e5
call fcn.03853df0
mov edx, 0x970420d5
mov ecx, eax
call fcn.03853d50
mov dword [0x385db9c], eax
call eax
mov ebx, eax
mov ebp, edx
mov eax, 0x3866f754
jmp 0x3856530
cmp eax, 0x1a91d3ea
jg 0x38567ce
je 0x38567bf
cmp eax, 0x18cb6083
je 0x38567a9
cmp eax, 0x18fa7f44
jne 0x3856c24
call fcn.03854640
mov dword [esp + 0x70], eax
mov eax, 0x2fae6d00
jmp 0x3856530
lea ecx, [esp + 0x84]
call fcn.0385afd0
mov eax, 0x1bc5b985
jmp 0x3856530
call fcn.03858c50
mov eax, 0xa239b2c
jmp 0x3856530
cmp eax, 0x1b2a0886
jne 0x3856c24
call fcn.03859230
neg eax
sbb eax, eax
and eax, 0xf6acc697
add eax, 0x16e82f7c
jmp 0x3856530
lea edx, [esp + 0x2c]
lea ecx, [esp + 0x64]
call fcn.038570e0
neg eax
sbb eax, eax
and eax, 0xe3d786b9
add eax, 0x391f41b6
jmp 0x3856530
cmp eax, 0x2866c6e2
jg 0x3856b3d
je 0x3856b25
cmp eax, 0x1f911fc3
jg 0x3856a56
je 0x3856a4c
cmp eax, 0x1f0d9569
jg 0x3856a2e
je 0x3856a1b
cmp eax, 0x1cf6c86f
je 0x38568d8
cmp eax, 0x1dd863eb
jne 0x3856c24
mov edi, 0x24c306f1
mov dword [esp + 0x14], edi
call fcn.03855e40
mov edx, eax
call fcn.03855e80
cmp edx, eax
jbe 0x38568a6
push 0xa6
mov edx, 0xf6e10053
mov ecx, 0x802173e5
call fcn.03854030
add esp, 4
call eax
mov edx, eax
call fcn.03855e40
mov esi, eax
call fcn.03855e80
sub esi, eax
mov eax, edx
xor edx, edx
div esi
mov esi, edx
jmp 0x38568a8
xor esi, esi
push 0x2f
mov edx, 0x970420d5
mov ecx, 0x802173e5
call fcn.03854030
add esp, 4
call eax
mov ebx, eax
mov ebp, edx
call fcn.03855e80
add eax, esi
add ebx, eax
mov eax, 0x3866f754
adc ebp, 0
jmp 0x3856521
mov dword [esp + 0x14], 0x765f
lea eax, [esp + 0x34]
shr dword [esp + 0x14], 5
lea edx, [esp + 0x2c]
or dword [esp + 0x14], 0x44cd1d99
xor dword [esp + 0x14], 0x44cd1fba
mov ecx, dword [esp + 0x14]
push eax
call fcn.038512a0
add esp, 4
test eax, eax
je 0x3856994
mov edi, 0x1f0d9569
mov dword [esp + 0x14], edi
call fcn.03855db0
mov edx, eax
call fcn.03855e10
cmp edx, eax
jbe 0x3856962
push 0xa6
mov edx, 0xf6e10053
mov ecx, 0x802173e5
call fcn.03854030
add esp, 4
call eax
mov esi, eax
call fcn.03855db0
mov edi, eax
call fcn.03855e10
sub edi, eax
xor edx, edx
mov eax, esi
div edi
mov edi, dword [esp + 0x14]
mov esi, edx
jmp 0x3856964
xor esi, esi
push 0x2f
mov edx, 0x970420d5
mov ecx, 0x802173e5
call fcn.03854030
add esp, 4
call eax
mov ebx, eax
mov ebp, edx
call fcn.03855e10
add eax, esi
add ebx, eax
mov eax, 0x21a47161
adc ebp, 0
jmp 0x3856521
call fcn.03851280
mov edi, 0x1f0d9569
mov dword [esp + 0x14], edi
call fcn.03855cf0
mov esi, eax
call fcn.03855d50
cmp esi, eax
jbe 0x38569e9
push 0xa6
mov edx, 0xf6e10053
mov ecx, 0x802173e5
call fcn.03854030
add esp, 4
call eax
mov esi, eax
call fcn.03855cf0
mov edi, eax
call fcn.03855d50
sub edi, eax
xor edx, edx
mov eax, esi
div edi
mov edi, dword [esp + 0x14]
mov esi, edx
jmp 0x38569eb
xor esi, esi
push 0x2f
mov edx, 0x970420d5
mov ecx, 0x802173e5
call fcn.03854030
add esp, 4
call eax
mov ebx, eax
mov ebp, edx
call fcn.03855d50
add eax, esi
add ebx, eax
mov eax, 0x3c760dd
adc ebp, 0
jmp 0x3856521
lea ecx, [esp + 0x7c]
call fcn.03856140
mov eax, 0x18cb6083
jmp 0x3856530
cmp eax, 0x1f12369e
jne 0x3856c24
mov ecx, dword [esp + 0x34]
call fcn.038540f0
mov eax, 0x3c760dd
jmp 0x3856530
mov eax, 0x1102920a
jmp 0x3856530
cmp eax, 0x24ef030d
jg 0x3856b07
je 0x3856afd
cmp eax, 0x21a47161
je 0x3856ac0
cmp eax, 0x24c306f1
jne 0x3856c24
lea ecx, [esp + 0x48]
call fcn.03855fb0
test eax, eax
je 0x3856ab6
lea eax, [esp + 0x48]
mov edx, 0xabfb4de
push eax
push 0xdc
mov ecx, 0x802173e5
mov dword [esp + 0x6c], eax
call fcn.03854030
add esp, 4
call eax
mov dword [esp + 0x68], eax
mov eax, 0x3e9ea02
jmp 0x3856530
mov eax, 0xe0e6cf9
jmp 0x3856530
lea edx, [esp + 0x3c]
lea ecx, [esp + 0x34]
call fcn.03857350
test eax, eax
je 0x38565f4
xor ecx, ecx
call fcn.0385ade0
mov ecx, dword [esp + 0x44]
mov eax, 0xe90e0d7
test ecx, ecx
je 0x3856530
cmp ecx, 7
mov ecx, 0x36637948
cmove eax, ecx
jmp 0x3856530
mov eax, 0x1dd863eb
jmp 0x3856530
cmp eax, 0x285b1e7a
jne 0x3856c24
call fcn.03858990
test eax, eax
je 0x3856b72
mov eax, 0x102260a6
jmp 0x3856530
call fcn.03859040
neg eax
sbb eax, eax
and eax, 0x340e3655
add eax, 0x5994a93
jmp 0x3856530
cmp eax, 0x391f41b6
jg 0x3856cc1
je 0x3856c5f
cmp eax, 0x3866f754
jg 0x3856c45
je 0x3856b8d
cmp eax, 0x2fae6d00
je 0x3856b7a
cmp eax, 0x36637948
jne 0x3856c24
call fcn.03858510
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.03855ef0
mov dword [esp + 0x74], eax
mov eax, 0x3a166255
jmp 0x3856530
mov eax, ebx
or eax, ebp
je 0x3856c22
call fcn.03855c40
mov edx, eax
call fcn.03855ca0
cmp edx, eax
jbe 0x3856bdd
push 0xa6
mov edx, 0xf6e10053
mov ecx, 0x802173e5
call fcn.03854030
add esp, 4
call eax
mov esi, eax
call fcn.03855c40
mov edi, eax
call fcn.03855ca0
sub edi, eax
xor edx, edx
mov eax, esi
mov esi, 0x1b2a0886
div edi
jmp 0x3856bdf
xor edx, edx
call fcn.03855ca0
lea ecx, [edx + eax]
call fcn.03859e10
test eax, eax
je 0x3856bfe
mov edi, dword [esp + 0x14]
mov eax, 0xe0e6cf9
jmp 0x3856530
push 0x2f
mov edx, 0x970420d5
mov ecx, 0x802173e5
call fcn.03854030
add esp, 4
call eax
cmp edx, ebp
jb 0x3856c37
ja 0x3856c1e
cmp eax, ebx
jb 0x3856c37
mov edi, dword [esp + 0x14]
mov eax, edi
cmp eax, 0x2212e6e3
jne 0x3856530
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, dword [esp + 0x14]
mov eax, 0x3866f754
jmp 0x3856530
cmp eax, 0x38c7fac7
jne 0x3856c24
mov ecx, dword [esp + 0x7c]
call fcn.038540f0
mov eax, 0x3866f754
jmp 0x3856530
mov eax, dword [str.puw]
test eax, eax
jne 0x3856c83
mov ecx, 0x802173e5
call fcn.03853df0
mov edx, 0x51a2922a
mov ecx, eax
call fcn.03853d50
mov dword [str.puw], eax
call eax
mov esi, eax
mov eax, dword [0x385e028]
test eax, eax
jne 0x3856cab
mov ecx, 0x802173e5
call fcn.03853df0
mov edx, 0x7e1ee957
mov ecx, eax
call fcn.03853d50
mov dword [0x385e028], eax
push dword [esp + 0x84]
push 0
push esi
call eax
mov eax, 0x38c7fac7
jmp 0x3856521
cmp eax, 0x3ac1c62e
jg 0x3856d15
je 0x3856cfe
cmp eax, 0x39a780e8
je 0x3856cef
cmp eax, 0x3a166255
jne 0x3856c24
call fcn.03855f50
mov dword [esp + 0x78], eax
mov eax, 0x1f0d9569
jmp 0x3856530
call fcn.03859370
mov eax, 0x285b1e7a
jmp 0x3856530
call fcn.03856fa0
test eax, eax
je 0x3856b72
mov eax, 0x15f9b2f8
jmp 0x3856530
cmp eax, 0x3b5c1fcf
jne 0x3856c24
call fcn.03855300
mov dword [esp + 0x6c], eax
mov eax, 0x18fa7f44
jmp 0x3856530
call fcn.03858b20
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.0385b0e0
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret