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

Disassembly:
sub esp, 0xe0
push ebx
mov ebx, eax
push ebp
push esi
xor esi, esi
test byte [ebx + 0x103b3], 4
push edi
mov ebp, 1
lea edi, [ebx + 0x12e84]
mov dword [esp + 0x10], ebp
mov dword [esp + 0x1c], 0xee00000
mov dword [ebx + 0x12e40], esi
mov dword [ebx + 0x12e44], esi
mov dword [ebx + 0x12e4c], esi
mov dword [ebx + 0x12e48], esi
mov dword [ebx + 0x12e50], esi
mov dword [ebx + 0x12e54], esi
mov dword [ebx + 0x12e58], esi
mov dword [ebx + 0x12e5c], esi
mov dword [ebx + 0x12e60], esi
mov dword [ebx + 0x12e64], esi
mov dword [ebx + 0x12e68], esi
mov dword [ebx + 0x12e6c], esi
mov dword [ebx + 0x12e78], esi
mov dword [ebx + 0x12e7c], esi
mov dword [ebx + 0x12e80], esi
mov dword [edi], esi
je 0x39375f
push 0x88
push esi
lea eax, [esp + 0x70]
push eax
call fcn.000489a0
mov eax, dword [ebx + 0x10484]
push esi
push esi
lea ecx, [esp + 0x70]
push ecx
push ebx
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], 0xbfef0100
mov dword [esp + 0x80], 2
mov dword [esp + 0x98], eax
mov dword [esp + 0xa0], esi
mov dword [esp + 0xa4], 0x500d
mov dword [esp + 0xa8], esi
mov dword [esp + 0xd0], 0x10
mov dword [esp + 0xd4], esi
mov dword [esp + 0xac], esi
mov dword [esp + 0xb0], esi
mov dword [esp + 0x9c], 0xbfef0031
call fcn.00048650
test eax, eax
jne 0x39374f
push esi
push 0xf
push esi
push esi
push 0xbfef0031
push 0x20000000
push 2
push 0xbfef0030
push ebx
call fcn.000487e0
test eax, eax
jne 0x39374f
push 0xbfef0030
push 0xbfef0002
push ebx
call fcn.000488a0
test eax, eax
jne 0x39374f
push 0xbfef0c07
push 0xbfef0002
push ebx
call fcn.000488a0
test eax, eax
je 0x39375f
pop edi
pop esi
pop ebp
mov eax, 0xee00000
pop ebx
add esp, 0xe0
ret
push esi
push 0x20
push esi
push 0xd0
push 0xbfef000e
push 0x20100002
push 2
push 0xbfef0c06
push ebx
call fcn.000487e0
test eax, eax
jne 0x3941c1
push 0xbfef0c06
push 0xbfef0002
push ebx
call fcn.000488a0
test eax, eax
jne 0x3941c1
push eax
push 0x110
push eax
push 0x1c0
push 0xbfef000e
push 0x20100002
push 2
push 0xbfef0c09
push ebx
call fcn.000487e0
test eax, eax
jne 0x3941c1
push 0xbfef0c09
push 0xbfef0002
push ebx
call fcn.000488a0
test eax, eax
jne 0x3941c1
push eax
push 0x20
push eax
push 0x300
push 0xbfef000e
push 0x20100002
push 2
push 0xbfef0c0a
push ebx
call fcn.000487e0
test eax, eax
jne 0x3941c1
push 0xbfef0c0a
push 0xbfef0002
push ebx
call fcn.000488a0
test eax, eax
jne 0x3941c1
test byte [ebx + 0x1047f], 0x10
je 0x3938a1
test byte [ebx + 0x10], 0x40
je 0x3938a1
lea eax, [ebx + 0x12e80]
push eax
push 4
push 0x41c7e4
lea esi, [ebx + 0x10470]
push esi
call fcn.00398050
test eax, eax
jne 0x39385f
push edi
push 3
push 0x41c7f4
push esi
call fcn.00398050
jmp 0x3938a1
push 0
push 0x30
push 0
push 0x350
push 0xbfef000e
push 0x20100002
push 2
push 0xbfef0c0c
push ebx
call fcn.000487e0
test eax, eax
jne 0x3941c1
push 0xbfef0c0c
push 0xbfef0002
push ebx
call fcn.000488a0
test eax, eax
jne 0x3941c1
cmp dword [ebx + 0x103a4], ebp
jbe 0x3939bf
mov esi, ebx
call fcn.00390e50
test byte [ebx + 0x103b0], 0x40
je 0x3939bf
mov eax, dword [ebx + 0x1032c]
shl eax, 0xa
sub eax, ebp
xor edi, edi
cmp dword [ebx + 0x103a4], edi
mov dword [esp + 0x20], eax
jbe 0x3939bf
mov edi, edi
lea esi, [edi + 1]
cmp esi, dword [ebx + 0x103a4]
mov dword [esp + 0x18], esi
jae 0x3939b1
lea edx, [edi + edi*4 - 0x4010f300]
lea eax, [ebx + edx*4 + 0x44cfc8]
mov dword [esp + 0x14], eax
cmp dword [ebx + 0x10450], 0
jne 0x393972
mov ecx, dword [esp + 0x20]
xor eax, eax
push eax
push ecx
push eax
push eax
mov edx, edi
and edx, 3
or edx, 8
add edx, edx
add edx, edx
mov eax, esi
and eax, 0xf
push 0xbfef0004
or edx, eax
shl edx, 0x18
push edx
push 2
lea ebp, [esi + edi*4 - 0x4010f300]
push ebp
push ebx
call fcn.000487e0
test eax, eax
jne 0x3941c1
mov ecx, dword [esp + 0x14]
push ebp
push 0xbfef0002
lea edx, [esi + edi*4]
mov dword [ecx], ebp
push ebx
mov dword [ebx + edx*4 + 0x103b8], ebp
call fcn.000488a0
test eax, eax
jne 0x3941c1
jmp 0x393999
mov eax, dword [ebx + 0xc]
mov ecx, dword [esp + 0x14]
shl eax, 0x10
xor eax, 0xbeef0202
mov dword [ecx], eax
mov edx, dword [ebx + 0xc]
shl edx, 0x10
xor edx, 0xbeef0202
lea eax, [esi + edi*4]
mov dword [ebx + eax*4 + 0x103b8], edx
add dword [esp + 0x14], 0x10
add esi, 1
cmp esi, dword [ebx + 0x103a4]
jb 0x393905
mov esi, dword [esp + 0x18]
mov edi, esi
cmp edi, dword [ebx + 0x103a4]
jb 0x3938e0
cmp dword [ebx + 0x10450], 0
jne 0x3939e8
mov ecx, dword [ebx + 0xc]
shl ecx, 0x10
xor ecx, 0xbeef0201
push ecx
push 0xbfef0002
push ebx
call fcn.000488a0
test eax, eax
jne 0x3941c1
mov edx, dword [ebx + 0xc]
shl edx, 0x10
xor edx, 0xbeef0202
push edx
push 0xbfef0002
push ebx
call fcn.000488a0
mov eax, dword [ebx + 0x12e38]
mov ecx, dword [ebx + 0x12e88]
lea ebp, [ecx + eax*4]
lea eax, [ebx + 0x12e6c]
push eax
push 0xbfef0029
xor esi, esi
push esi
mov ecx, 0x3f7b80
mov eax, 1
lea edi, [esp + 0x1c]
call fcn.00390e00
cmp dword [esp + 0x10], esi
je 0x393d2e
lea eax, [ebx + 0x12e48]
push eax
mov esi, 0xbfef000b
push esi
push 0
mov ecx, str.bBCDJ9W
mov eax, 2
call fcn.00390e00
lea eax, [ebx + 0x12e50]
push eax
push 0xbfef000f
push 0
mov ecx, 0x3f7b5c
mov eax, 1
call fcn.00390e00
lea eax, [ebx + 0x12e58]
push eax
push 0xbfef0011
push 0
mov ecx, 0x3f7b60
mov eax, 1
call fcn.00390e00
lea eax, [ebx + 0x12e54]
push eax
push 0xbfef0010
push 0
mov ecx, 0x3f7b64
mov eax, 1
call fcn.00390e00
lea eax, [ebx + 0x12e4c]
push eax
push 0xbfef000c
push 0
mov ecx, 0x3f7b48
mov eax, 2
call fcn.00390e00
lea eax, [ebx + 0x12e5c]
push eax
push 0xbfef0012
push 0
mov ecx, 0x3f7b68
mov eax, 2
call fcn.00390e00
lea eax, [ebx + 0x12e60]
push eax
push 0xbfef0014
push 0
mov ecx, 0x3f7b48
mov eax, 2
call fcn.00390e00
lea eax, [ebx + 0x12e64]
push eax
push 0xbfef0015
push 0
mov ecx, 0x3f7b70
mov eax, 1
call fcn.00390e00
lea eax, [ebx + 0x12e68]
push eax
push 0xbfef0013
push 0
mov ecx, 0x3f7b74
mov eax, 3
call fcn.00390e00
mov dword [ebp], 0x4a000
mov dword [ebp + 4], 0xbfef000c
mov dword [ebp + 8], 0x4a19c
mov dword [ebp + 0xc], esi
add ebp, 8
add ebp, 8
mov dword [ebp], 0x4a2fc
mov eax, 3
mov dword [ebp + 4], eax
add ebp, 8
mov dword [ebp], fcn.00046000
mov dword [ebp + 4], esi
add ebp, 8
mov dword [ebp], 0x86184
mov edx, dword [ebx + 0xc]
shl edx, 0x10
xor edx, 0xbeef0201
mov dword [ebp + 4], edx
mov ecx, dword [ebx + 0xc]
add ebp, 0xc
add ebp, 8
add ebp, 8
add ebp, 8
shl ecx, 0x10
add ebp, 8
xor ecx, 0xbeef0201
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x20], 0x40000
add ebp, 8
mov edi, 0xbfef0015
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x20], 0x40300
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], 0x40304
xor ecx, ecx
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x10], 0x48000
mov dword [ebp - 0xc], 0xbfef0010
mov dword [ebp - 8], 0x4818c
mov dword [ebp - 4], 0xbfef000f
mov dword [ebp], 0x48198
mov dword [ebp + 4], esi
mov dword [ebp + 8], 0x48188
add ebp, 8
add ebp, 8
add ebp, 8
add ebp, 0x10
add ebp, 8
mov edx, 0xbfef0011
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x20], 0x40000
mov dword [ebp - 0x18], 0xc0304
mov dword [ebp - 0x14], 1
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0xc], 1
mov dword [ebp - 8], 0x40300
mov dword [ebp - 4], eax
mov dword [ebp + 4], edx
mov dword [ebp], 0x40000
mov dword [ebp + 8], 0x100310
mov dword [ebp + 0xc], ecx
add ebp, 0x1c
or edx, 0xffffffff
mov dword [ebp - 0xc], edx
mov dword [ebp - 8], edx
mov dword [ebp - 4], edx
mov dword [ebp], 0x48304
add ebp, 8
add ebp, 8
mov edx, 1
mov dword [ebp - 0xc], edx
mov dword [ebp - 4], edx
mov dword [ebp - 8], 0x48300
mov dword [ebp], 0x40000
mov dword [ebp + 4], 0xbfef0012
mov dword [ebp + 8], 0x40180
mov dword [ebp + 0xc], 0xbfef0c0a
add ebp, 8
mov dword [ebp + 8], 0x40000
mov dword [ebp + 0xc], 0xbfef0014
add ebp, 8
mov dword [ebp + 8], 0x4019c
mov dword [ebp + 0xc], esi
add ebp, 8
mov dword [ebp + 8], 0x40184
mov dword [ebp + 0xc], edi
add ebp, 8
add ebp, 8
mov dword [ebp], 0x402fc
mov dword [ebp + 4], ecx
add ebp, 8
mov dword [ebp], 0x40000
mov dword [ebp + 4], 0xbfef0013
add ebp, 8
mov dword [ebp], 0x40184
mov edx, dword [ebx + 0xc]
shl edx, 0x10
xor edx, 0xbeef0201
mov dword [ebp + 4], edx
add ebp, 8
mov dword [ebp + 4], esi
mov dword [ebp], 0x40198
add ebp, 8
mov dword [ebp], 0x40304
mov dword [ebp + 4], eax
add ebp, 8
xor esi, esi
jmp 0x393d9b
lea eax, [ebx + 0x12e5c]
push eax
push 0xbfef0012
push esi
mov ecx, 0x3f7b68
mov eax, 2
call fcn.00390e00
mov dword [ebp], fcn.00046000
mov dword [ebp + 4], 0xbfef0029
mov dword [ebp + 8], 0x462ac
mov dword [ebp + 0xc], 3
add ebp, 8
add ebp, 8
mov dword [ebp], 0x46290
mov dword [ebp + 4], esi
add ebp, 8
mov dword [ebp], 0x4e000
mov dword [ebp + 4], 0xbfef0012
add ebp, 8
mov dword [ebp], 0x4e180
mov dword [ebp + 4], 0xbfef0c06
add ebp, 8
or byte [ebx + 0x1047f], 0x40
lea eax, [ebx + 0x12e78]
push eax
push 5
push 0x41c7c0
lea edi, [ebx + 0x10470]
push edi
mov dword [ebx + 0x10458], esi
mov dword [ebx + 0x1045c], esi
mov dword [ebx + 0x10460], esi
mov dword [ebx + 0x10464], esi
call fcn.00398050
test eax, eax
jne 0x393f4c
lea eax, [ebx + 0x12e7c]
push eax
push 4
push 0x41c7d4
push edi
call fcn.00398050
test eax, eax
jne 0x393f4c
mov eax, dword [ebx + 0x12e78]
mov ecx, dword [ebx + 0x12e7c]
mov esi, ebx
mov dword [ebx + 0x10460], eax
mov dword [ebx + 0x10464], ecx
call fcn.00390f10
test eax, eax
jne 0x39419f
mov dword [ebp], 0x40060
mov dword [ebp + 4], 0xbfef0c18
add ebp, 8
mov edx, 0x11111111
jmp 0x393e40
mov ecx, 3
jmp 0x393e50
mov dword [ebp + 4], eax
mov dword [ebp], 0x40064
add ebp, 8
mov dword [ebp], 0x4006c
mov dword [ebp + 4], edx
add ebp, 8
mov dword [ebp], 0x40064
lea esi, [eax + 0x10]
mov dword [ebp + 4], esi
add ebp, 8
mov dword [ebp], 0x4006c
mov dword [ebp + 4], edx
add ebp, 8
add eax, 0x20
sub ecx, 1
jne 0x393e50
cmp eax, 0xc0
jl 0x393e40
xor esi, esi
cmp dword [ebx + 0x1020c], esi
mov dword [ebx + 0x12e44], 0
jbe 0x39412d
mov edi, edi
mov edx, 1
mov ecx, esi
shl edx, cl
test dword [ebx + 0x10214], edx
je 0x393f29
lea eax, [esp + 0x18]
push eax
push 1
push 0x3f7b84
lea eax, [ebx + 0x10470]
push eax
call fcn.00398050
test eax, eax
jne 0x393f29
mov dword [esp + 0x40], eax
mov dword [esp + 0x3c], eax
lea ecx, [ebx + 0x12e44]
push ecx
lea eax, [esi - 0x4010fff9]
push eax
lea ecx, [esp + 0x30]
push ecx
mov ecx, 0x3f7b84
mov eax, 1
lea edi, [esp + 0x1c]
mov dword [esp + 0x44], esi
call fcn.00390e00
cmp dword [esp + 0x10], 0
jne 0x393f3d
lea eax, [esi - 0x4010fff9]
mov dword [ebp], 0x4c000
mov dword [ebp + 4], eax
add ebp, 8
add esi, 1
cmp esi, dword [ebx + 0x1020c]
jb 0x393eb0
jmp 0x39412d
mov dword [ebx + 0x12e44], 0
jmp 0x39412d
cmp dword [ebx + 0x1020c], esi
jbe 0x39412d
mov esi, 0xbfef0007
mov dword [esp + 0x14], 0x300
jmp 0x393f70
lea ecx, [esi + 0x4010fff9]
mov edx, 1
shl edx, cl
test dword [ebx + 0x10214], edx
je 0x394113
lea eax, [esp + 0x18]
push eax
push 7
push 0x3f7b2c
lea eax, [ebx + 0x10470]
push eax
call fcn.00398050
test eax, eax
jne 0x394113
lea eax, [esi + 0x4010fff9]
mov dword [esp + 0x38], eax
xor eax, eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x3c], eax
lea eax, [ebx + 0x12e44]
push eax
push esi
lea ecx, [esp + 0x30]
push ecx
mov ecx, 0x3f7b2c
mov eax, 7
lea edi, [esp + 0x1c]
call fcn.00390e00
cmp dword [esp + 0x10], 0
jne 0x39419f
mov al, byte [esp + 0x40]
test al, 2
jne 0x393ff7
and byte [ebx + 0x1047f], 0xbf
test al, 0x10
jne 0x394002
and byte [ebx + 0x1047e], 0xf7
mov dword [ebp], 0x4c000
mov dword [ebp + 4], esi
mov dword [ebp + 8], 0x4c180
mov dword [ebp + 0xc], 0xbfef0c09
add ebp, 8
add ebp, 8
mov dword [ebp], 0x8c184
mov edx, dword [ebx + 0xc]
shl edx, 0x10
xor edx, 0xbeef0201
mov dword [ebp + 4], edx
mov eax, dword [ebx + 0xc]
shl eax, 0x10
xor eax, 0xbeef0201
mov dword [ebp + 8], eax
mov eax, dword [ebx + 0x103b0]
add ebp, 0xc
test al, 1
je 0x394113
test al, 0x20
je 0x394113
lea eax, [esi + 0x4010fff9]
mov dword [esp + 0x58], eax
xor eax, eax
mov dword [esp + 0x60], eax
mov dword [esp + 0x5c], eax
lea ecx, [esp + 0x20]
push ecx
lea eax, [esi + 0xc19]
push eax
lea edx, [esp + 0x50]
push edx
mov ecx, 0x3f7b50
mov eax, 1
lea edi, [esp + 0x1c]
call fcn.00390e00
cmp dword [esp + 0x10], 0
jne 0x39419f
mov eax, 1
test byte [esp + 0x60], al
je 0x3940bc
cmp dword [ebx + 0x12df8], eax
je 0x3940bc
or byte [ebx + 0x103b3], 8
jmp 0x3940c3
and byte [ebx + 0x103b3], 0xf7
cmp dword [ebx + 0x10458], 0
jne 0x394113
mov dword [ebp], 0x40000
lea eax, [esi + 0xc19]
mov dword [ebp + 4], eax
mov eax, dword [esp + 0x14]
add ebp, 8
mov dword [ebp], 0x4033c
mov dword [ebp + 4], esi
add ebp, 8
or eax, 0x40000
mov dword [ebp], eax
mov dword [ebp + 4], 6
add ebp, 8
mov dword [ebp], 0x40338
mov dword [ebp + 4], 0
add ebp, 8
add dword [esp + 0x14], 8
add esi, 1
lea ecx, [esi + 0x4010fff9]
cmp ecx, dword [ebx + 0x1020c]
jb 0x393f70
push ebx
call fcn.0038ff30
test eax, eax
jne 0x394146
cmp dword [ebx + 0x12dd4], 2
jne 0x394146
push ebx
call fcn.0038ffd0
test byte [ebx + 0x1047f], 0x10
je 0x394197
test byte [ebx + 0x10], 0x40
je 0x394197
cmp dword [ebx + 0x12e80], 0
jne 0x394182
push 0x417a
lea esi, [ebx + 0x10470]
push esi
call fcn.00398000
test eax, eax
jne 0x394182
push 0x177a
push esi
call fcn.00398000
test eax, eax
je 0x394197
push ebx
call fcn.003926b0
test eax, eax
je 0x394197
and byte [ebx + 0x10245], 0xbf
and dword [ebx + 0x10], 0xffffffbf
mov dword [esp + 0x1c], 0
sub ebp, dword [ebx + 0x12e88]
push ebx
sar ebp, 2
mov dword [ebx + 0x12e38], ebp
call fcn.00391c90
cmp eax, 0xee00020
jne 0x3941c1
push ebx
call fcn.00391f00
mov eax, dword [ebx + 0x10258]
cmp eax, 5
jl 0x3941f3
cmp eax, 6
jle 0x3941ec
cmp eax, 7
jne 0x3941f3
mov esi, ebx
call fcn.00393440
mov eax, dword [esp + 0x1c]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xe0
ret
mov esi, ebx
call fcn.00393290
mov eax, dword [esp + 0x1c]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xe0
ret