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

Disassembly:
sub esp, 0x354
xor eax, eax
mov dword [esp + 0x18], eax
push ebx
mov ebx, dword [esp + 0x360]
push esi
mov dword [esp + 0x18], eax
push edi
push ebp
mov ecx, dword [ebx + 0x4c]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], eax
mov ecx, dword [ebx + 0x1c]
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], eax
test ecx, ecx
jne 0x46006e
cmp dword [ebx + 0x20], eax
je 0x460af3
mov eax, dword [ebx + 0x24]
test eax, eax
jle 0x460af3
test ecx, ecx
je 0x4600a5
cmp dword [ebx + 0x20], 0
je 0x4600a5
mov esi, dword [esp + 0x368]
push 0xffff920a
push 2
push esi
call fcn.004bda00
add esp, 0xc
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x354
ret
cmp dword [ebx], 0
jne 0x4600cc
mov esi, dword [esp + 0x368]
push 0xffff9208
push 2
push esi
call fcn.004bda00
add esp, 0xc
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x354
ret
cmp dword [ebx + 4], 0
jne 0x4600f4
mov esi, dword [esp + 0x368]
push 0xffff9207
push 2
push esi
call fcn.004bda00
add esp, 0xc
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x354
ret
xor edi, edi
test ecx, ecx
jne 0x46016e
shl ax, 2
push 0x3e
mov esi, dword [esp + 0x36c]
push eax
mov dword [esp + 0x30], 1
mov ecx, dword [esi + 0x44]
push ecx
push esi
call fcn.004aa140
add esp, 0x10
mov dword [ebx + 0x1c], eax
cmp eax, edi
je 0x4601f8
cmp dword [ebx + 0x24], edi
jle 0x460175
xor ebp, ebp
mov eax, dword [ebx + 0x20]
mov ecx, dword [ebx + 0x1c]
test esi, esi
mov dword [ecx + ebp], eax
je 0x46014b
mov eax, dword [esi + 0xac]
test eax, eax
je 0x46014b
mov eax, dword [eax + 0x2c]
jmp 0x46014d
xor eax, eax
mov ecx, dword [ebx + 0x20]
add ebp, 4
push ecx
inc edi
push eax
call fcn.004addd0
add esp, 8
mov ecx, dword [ebx + 0x20]
add ecx, eax
inc ecx
cmp dword [ebx + 0x24], edi
mov dword [ebx + 0x20], ecx
jg 0x46012f
jmp 0x460175
mov esi, dword [esp + 0x368]
cmp dword [ebx + 0x18], 0
je 0x460294
mov ecx, dword [esp + 0x10]
mov edi, dword [ecx + 0x2c]
test edi, edi
je 0x4601d7
lea eax, [esp + 0x58]
mov ecx, dword [edi + 4]
mov edx, dword [esp + 0x10]
push eax
push ecx
push edx
call fcn.004351c0
add esp, 0xc
mov ecx, 0
test esi, esi
je 0x4601af
mov ecx, dword [esi + 0xac]
mov eax, dword [ebx + 0x1c]
lea ebp, [esp + 0x58]
mov edx, dword [eax]
push edx
push ebp
push ecx
call fcn.004ac2e0
add esp, 0xc
test ax, ax
je 0x4601d0
mov edi, dword [edi]
test edi, edi
jne 0x46018a
jmp 0x4601d7
mov eax, dword [edi + 0x1c]
mov dword [esp + 0x20], eax
cmp dword [esp + 0x20], 0
jne 0x460269
mov eax, dword [ebx + 0x1c]
mov ecx, dword [eax]
push ecx
push 0xffff920b
push 2
push esi
call fcn.004bda00
add esp, 0x10
cmp dword [esp + 0x1c], 0
je 0x46020f
mov eax, dword [esp + 0x1c]
push 1
push eax
push esi
call fcn.004cf040
add esp, 0xc
cmp dword [esp + 0x18], 0
je 0x460226
mov eax, dword [esp + 0x18]
push 1
push eax
push esi
call fcn.004cf040
add esp, 0xc
cmp dword [esp + 0x14], 0
je 0x46023d
mov eax, dword [esp + 0x14]
push 1
push eax
push esi
call fcn.004cf040
add esp, 0xc
cmp dword [esp + 0x28], 0
je 0x460259
mov eax, dword [ebx + 0x1c]
test eax, eax
je 0x460259
push eax
mov eax, dword [esi + 0x44]
push eax
push esi
call fcn.004aa460
add esp, 0xc
mov eax, 0xfffffffe
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x354
ret
xor ebp, ebp
mov eax, dword [esp + 0x20]
mov bp, word [edi + 0x14]
push ebp
push eax
push esi
call fcn.004e51e0
add esp, 0xc
cmp eax, ebp
jne 0x460294
mov eax, dword [ebx]
pop ebp
pop edi
pop esi
pop ebx
mov byte [eax], 0
xor eax, eax
add esp, 0x354
ret
mov eax, dword [ebx]
xor edi, edi
push eax
push esi
call fcn.004be300
mov dword [esp + 0x268], eax
mov dword [esp + 0x34], edi
mov dword [esp + 0x60], edi
add esp, 8
cmp dword [ebx + 0x24], edi
jle 0x46030c
test esi, esi
je 0x4602c9
mov eax, dword [esi + 0xac]
test eax, eax
je 0x4602c9
mov ebp, dword [eax + 0x2c]
jmp 0x4602cb
xor ebp, ebp
mov eax, dword [ebx + 0x1c]
mov ecx, dword [eax + edi]
push ecx
push esi
call fcn.004be300
mov ecx, dword [esp + 0x268]
add esp, 8
push eax
push ecx
push ebp
call fcn.004ae9e0
add esp, 0xc
test ax, ax
jne 0x460304
add edi, 4
inc dword [esp + 0x58]
mov eax, dword [esp + 0x58]
cmp dword [ebx + 0x24], eax
jg 0x4602b6
jmp 0x46030c
mov dword [esp + 0x2c], 1
cmp dword [esp + 0x2c], 0
je 0x4603a9
test byte [esi + 0x12], 0x20
je 0x46033a
mov eax, dword [esp + 0x260]
push str._pmerge_
push eax
push 0x1104
push 5
push esi
call fcn.004bda00
add esp, 0x14
mov eax, dword [esp + 0x260]
mov ecx, dword [ebx]
lea edx, [esp + 0x15c]
push eax
push ecx
push 0x5399d8
push 0x101
push edx
push esi
call fcn.004c8870
add esp, 0x18
test esi, esi
je 0x460373
mov eax, dword [esi + 0xac]
test eax, eax
je 0x460373
mov edi, dword [eax + 0x2c]
jmp 0x460375
xor edi, edi
lea eax, [esp + 0x15c]
push eax
push esi
call fcn.004dc6c0
add esp, 8
push eax
lea eax, [esp + 0x160]
push eax
push edi
call fcn.004ade40
lea eax, [esp + 0x168]
add esp, 0xc
push 1
push 0x51aebc
push eax
jmp 0x4603fa
test byte [esi + 0x12], 0x10
je 0x4603c2
mov eax, dword [ebx]
push eax
push 0x1105
push 4
push esi
call fcn.004bda00
add esp, 0x10
test esi, esi
je 0x4603d5
mov eax, dword [esi + 0xac]
test eax, eax
je 0x4603d5
mov ecx, dword [eax + 0x2c]
jmp 0x4603d7
xor ecx, ecx
mov eax, dword [ebx]
lea edx, [esp + 0x15c]
push eax
push edx
push ecx
call fcn.004ade40
lea ecx, [esp + 0x168]
add esp, 0xc
push 1
push 0x51aebc
push ecx
push esi
mov edi, 0
call fcn.004be630
add esp, 0x10
cmp dword [ebx + 0x14], 1
adc edi, 0xffffffff
and edi, 0x1000
test esi, esi
je 0x460428
mov eax, dword [esi + 0xac]
test eax, eax
je 0x460428
mov ecx, dword [eax + 0x2c]
jmp 0x46042a
xor ecx, ecx
mov eax, dword [ebx + 4]
lea edx, [esp + 0x58]
push eax
push edx
push ecx
call fcn.004ade40
lea ecx, [esp + 0x64]
add esp, 0xc
push 1
push 0x51aebc
push ecx
push esi
call fcn.004be630
lea ecx, [esp + 0x68]
add esp, 0x10
mov eax, edi
push ecx
or eax, 0x840
lea ecx, [esp + 0x160]
lea edx, [esp + 0x20]
push eax
push 0
push ecx
push edx
push esi
call fcn.004cce40
add esp, 0x18
test eax, eax
jne 0x4601f8
lea eax, [esp + 0x58]
push 1
push 0x51aec0
push eax
push esi
call fcn.004be630
lea eax, [esp + 0x16c]
add esp, 0x10
push 1
push 0x51aec0
push eax
or edi, 0x800
push esi
call fcn.004be630
lea eax, [esp + 0x68]
add esp, 0x10
lea ecx, [esp + 0x18]
push eax
lea eax, [esp + 0x160]
push edi
push 0
push eax
push ecx
push esi
call fcn.004cce40
add esp, 0x18
test eax, eax
jne 0x4601f8
push esi
call fcn.004b03e0
add esp, 4
mov ebp, eax
lea eax, [ebp + 1]
push 5
mov ecx, dword [esp + 0x14]
push 0
mov dword [esp + 0x2c], eax
push 1
push 3
push ecx
call fcn.00430870
add esp, 0x14
cmp dword [ebx + 0x18], 0
je 0x46057d
lea edi, [esp + 0x58]
xor eax, eax
mov ecx, 8
rep stosd dword es:[edi], eax
mov eax, dword [ebx + 0x1c]
mov edx, dword [esp + 0x20]
mov ecx, dword [eax]
mov eax, dword [esp + 0x18]
mov dword [esp + 0x58], ecx
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x6c], edx
lea edx, [esp + 0x58]
mov dword [esp + 0x5c], eax
push edx
mov dword [esp + 0x64], ecx
push esi
mov dword [esp + 0x6c], ebp
call fcn.00473360
add esp, 8
test eax, eax
jne 0x4601f8
lea eax, [esp + 0x58]
push eax
push esi
call fcn.00473380
add esp, 8
test eax, eax
jne 0x4601f8
lea eax, [esp + 0x58]
push eax
push esi
call fcn.00473370
add esp, 8
test eax, eax
je 0x460630
jmp 0x4601f8
lea edi, [esp + 0x58]
xor eax, eax
mov ecx, 0xd
rep stosd dword es:[edi], eax
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x10]
mov edx, dword [ebx + 0x1c]
mov dword [esp + 0x5c], eax
mov eax, dword [ebx + 0x24]
mov dword [esp + 0x60], ecx
mov ecx, dword [ebx + 0xc]
mov dword [esp + 0x64], edx
mov word [esp + 0x68], ax
mov edx, dword [ebx + 0x10]
mov word [esp + 0x6a], 1
mov dword [esp + 0x6c], 0x51aec0
mov eax, dword [ebx + 0x2c]
mov dword [esp + 0x70], ecx
mov ecx, dword [ebx + 0x30]
mov dword [esp + 0x74], edx
mov edx, dword [esp + 0x24]
mov dword [esp + 0x7c], eax
test byte [esi + 0x12], 0x10
mov dword [esp + 0x80], ecx
mov dword [esp + 0x84], ebp
mov dword [esp + 0x88], edx
je 0x4605ff
push 0x1107
push 4
push esi
call fcn.004bda00
add esp, 0xc
lea eax, [esp + 0x58]
push eax
push esi
call fcn.00460c30
add esp, 8
test ax, ax
jne 0x4601f8
push 0
push 0
push 0
push 0
push esi
call fcn.004b5af0
add esp, 0x14
test ax, ax
jne 0x4601f8
mov ecx, dword [esp + 0x10]
push 0x32
push 0
push 1
push 3
push ecx
call fcn.00430870
lea edi, [esp + 0x6c]
add esp, 0x14
xor eax, eax
mov ecx, 0xd
rep stosd dword es:[edi], eax
mov eax, dword [esp + 0x1c]
mov ecx, dword [ebx + 0x1c]
mov edx, dword [ebx + 0x24]
mov dword [esp + 0x5c], eax
mov eax, dword [ebx + 0x10]
mov dword [esp + 0x60], ecx
mov ecx, dword [ebx + 0x28]
mov dword [esp + 0x68], edx
mov dword [esp + 0x70], 0x51aebc
mov edx, dword [ebx + 0x44]
mov dword [esp + 0x6c], eax
mov eax, dword [ebx + 0x48]
mov dword [esp + 0x74], ebp
test byte [esi + 0x12], 0x10
mov dword [esp + 0x78], ecx
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x7c], edx
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], ecx
je 0x4606b4
push 0x1106
push 4
push esi
call fcn.004bda00
add esp, 0xc
lea eax, [esp + 0x58]
push eax
push esi
call fcn.00457470
add esp, 8
test eax, eax
jne 0x4601f8
lea eax, [esp + 0x58]
push eax
push esi
call fcn.00457490
add esp, 8
test eax, eax
jne 0x4601f8
lea eax, [esp + 0x58]
push eax
push esi
call fcn.00457480
add esp, 8
test eax, eax
jne 0x4601f8
push 0
push 0
push 0
push 0
push esi
call fcn.004b5af0
add esp, 0x14
test ax, ax
jne 0x4601f8
mov ecx, dword [esp + 0x10]
push 0x5a
push 0
push 1
push 3
mov ebp, 0
push ecx
call fcn.00430870
add esp, 0x14
cmp dword [esp + 0x2c], 0
je 0x46073f
mov eax, dword [ebx]
push eax
push esi
call fcn.004be330
add esp, 8
mov ebp, eax
mov eax, dword [esp + 0x1c]
push ebp
push eax
push esi
call fcn.00460b20
add esp, 0xc
test eax, eax
jne 0x4601f8
xor edi, edi
push ebp
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x20], edi
push eax
push esi
call fcn.00460b20
add esp, 0xc
test eax, eax
jne 0x4601f8
mov dword [esp + 0x18], edi
cmp dword [ebx + 8], edi
je 0x460962
test esi, esi
je 0x460793
mov eax, dword [esi + 0xac]
test eax, eax
je 0x460793
mov edi, dword [eax + 0x2c]
jmp 0x460795
xor edi, edi
mov eax, dword [ebx]
push eax
push esi
call fcn.004be330
add esp, 8
push eax
lea eax, [esp + 0x264]
push eax
push edi
call fcn.004ade40
lea eax, [esp + 0x64]
lea ecx, [esp + 0x26c]
add esp, 0xc
mov edx, dword [ebx + 8]
push 1
push eax
mov eax, dword [esp + 0x18]
push ecx
push edx
push 0x10
push eax
call fcn.00491bb0
add esp, 0x18
test eax, eax
je 0x4601f8
mov ecx, dword [esp + 0x10]
push 0x51af1c
lea edx, [esp + 0x264]
mov eax, dword [ecx + 0x6c]
push eax
push 0x5399e0
push 0x100
push edx
push esi
call fcn.004c8870
lea ecx, [esp + 0x278]
lea edx, [esp + 0x70]
lea eax, [esp + 0x2c]
add esp, 0x18
push ecx
push 0x800
push 0
push edx
push eax
push esi
call fcn.004cce40
add esp, 0x18
test eax, eax
je 0x460852
test byte [esi + 0x12], 4
je 0x460962
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx + 0x48]
push eax
push 0xffff9838
push 2
push esi
call fcn.004bda00
add esp, 0x10
jmp 0x460962
lea edi, [esp + 0x2c]
xor eax, eax
mov ecx, 0xb
rep stosd dword es:[edi], eax
mov eax, dword [ebx + 8]
mov ecx, dword [ebx]
mov edx, dword [esp + 0x14]
mov dword [esp + 0x2c], eax
mov eax, dword [ebx + 0x1c]
mov dword [esp + 0x30], ecx
mov ecx, dword [ebx + 0x24]
mov dword [esp + 0x34], edx
mov edx, dword [ebx + 0x10]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x24]
mov dword [esp + 0x3c], ecx
mov ecx, dword [ebx + 0x4c]
mov dword [esp + 0x40], edx
mov edx, dword [ebx + 0x50]
mov dword [esp + 0x48], eax
mov eax, dword [ebx + 0x18]
mov dword [esp + 0x4c], ecx
test byte [esi + 0x12], 0x10
mov dword [esp + 0x50], edx
mov dword [esp + 0x54], eax
je 0x4608bc
push 0x1108
push 4
push esi
call fcn.004bda00
add esp, 0xc
lea eax, [esp + 0x2c]
push eax
push esi
call fcn.00472800
add esp, 8
test eax, eax
jne 0x4601f8
lea eax, [esp + 0x2c]
push eax
push esi
call fcn.00472820
add esp, 8
test eax, eax
jne 0x4601f8
lea eax, [esp + 0x2c]
push eax
push esi
call fcn.00472810
add esp, 8
test eax, eax
jne 0x4601f8
cmp dword [esp + 0x34], 0
jne 0x46090d
mov dword [esp + 0x14], 0
cmp dword [ebx + 0x14], 0
je 0x460948
cmp dword [esp + 0x14], 0
je 0x460930
mov eax, dword [esp + 0x14]
push eax
push esi
call fcn.004cf020
mov dword [esp + 0x1c], 0
add esp, 8
lea eax, [esp + 0x58]
push 0
push eax
push esi
call fcn.004ce6f0
add esp, 0xc
test eax, eax
jne 0x4601f8
push 0
push 0
push 0
push 0
push esi
call fcn.004b5af0
add esp, 0x14
test ax, ax
jne 0x4601f8
cmp dword [ebx + 0x14], 0
je 0x460a16
push 0xffff920c
push 4
push esi
call fcn.004bda00
lea eax, [esp + 0x168]
add esp, 0xc
push 1
push 0x51aebc
push eax
push esi
call fcn.004be630
lea eax, [esp + 0x16c]
add esp, 0x10
push 0
push eax
push esi
call fcn.004ce6f0
add esp, 0xc
test eax, eax
jne 0x4601f8
push 0
push 0
push 0
push 0
push esi
call fcn.004b5af0
add esp, 0x14
test ax, ax
jne 0x4601f8
lea eax, [esp + 0x15c]
push 1
push 0x51aec0
push eax
push esi
call fcn.004be630
lea eax, [esp + 0x16c]
add esp, 0x10
push 0
push eax
push esi
call fcn.004ce6f0
add esp, 0xc
test eax, eax
jne 0x4601f8
push 0
push 0
push 0
push 0
push esi
call fcn.004b5af0
add esp, 0x14
test ax, ax
jne 0x4601f8
cmp dword [ebx + 0x3c], 0
je 0x460ab1
lea edi, [esp + 0x58]
xor eax, eax
mov ecx, 0x10
rep stosd dword es:[edi], eax
test byte [esi + 0x12], 0x10
je 0x460a43
push 0x110a
push 4
push esi
call fcn.004bda00
add esp, 0xc
mov eax, dword [ebx + 0x3c]
mov ecx, dword [ebx]
mov edx, dword [ebx + 0x1c]
mov dword [esp + 0x58], eax
mov eax, dword [ebx + 0x24]
mov dword [esp + 0x5c], ecx
mov ecx, dword [ebx + 0x10]
mov dword [esp + 0x64], edx
mov edx, dword [ebx + 0x40]
mov dword [esp + 0x68], eax
lea eax, [esp + 0x58]
mov dword [esp + 0x70], ecx
mov dword [esp + 0x80], edx
push eax
push esi
call fcn.0045c5a0
add esp, 8
test eax, eax
jne 0x4601f8
lea eax, [esp + 0x58]
push eax
push esi
call fcn.0045c5f0
add esp, 8
test eax, eax
jne 0x4601f8
lea eax, [esp + 0x58]
push eax
push esi
call fcn.0045c5e0
add esp, 8
test eax, eax
jne 0x4601f8
test byte [esi + 0x12], 0x10
je 0x460aca
mov eax, dword [ebx]
push eax
push 0x1109
push 4
push esi
call fcn.004bda00
add esp, 0x10
cmp dword [esp + 0x28], 0
je 0x460ae6
mov eax, dword [ebx + 0x1c]
test eax, eax
je 0x460ae6
push eax
mov eax, dword [esi + 0x44]
push eax
push esi
call fcn.004aa460
add esp, 0xc
xor eax, eax
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x354
ret
mov esi, dword [esp + 0x368]
push 0xffff9209
push 2
push esi
call fcn.004bda00
add esp, 0xc
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x354
ret