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

Disassembly:
sub esp, 0xdc
mov eax, dword [0x4f4970]
xor eax, esp
mov dword [esp + 0xd8], eax
mov ecx, dword [esp + 0xe4]
mov edx, dword [esp + 0xe8]
mov eax, dword [esp + 0xe0]
push ebx
push ebp
xor ebp, ebp
push esi
mov dword [ecx], ebp
push edi
mov dword [edx], ebp
sub esp, 0x1c
mov dword [esp + 0x4c], ecx
mov ecx, esp
mov dword [esp + 0x30], edx
mov edx, dword [eax]
xor eax, eax
mov dword [ecx + 0x18], 7
mov dword [ecx + 0x14], ebp
mov word [ecx + 4], ax
mov eax, edx
mov dword [esp + 0x2c], ebp
lea edi, [eax + 2]
jmp 0x4987b0
mov si, word [eax]
add eax, 2
cmp si, bp
jne 0x4987b0
sub eax, edi
sar eax, 1
push eax
push edx
call fcn.0040d270
lea ecx, [esp + 0x34]
push ecx
call fcn.00498550
mov esi, dword [esp + 0x44]
add esp, 0x20
cmp esi, dword [esp + 0x28]
jbe 0x4987e2
call fcn.0046d2c9
mov ebx, dword [esp + 0x18]
mov dword [esp + 0xac], ebx
mov edi, esi
nop
mov esi, dword [esp + 0x28]
cmp dword [esp + 0x24], esi
jbe 0x4987ff
call fcn.0046d2c9
cmp ebx, ebp
je 0x498809
cmp ebx, dword [esp + 0x18]
je 0x49880e
call fcn.0046d2c9
cmp edi, esi
je 0x498e88
push 4
mov dword [esp + 0x38], ebp
mov dword [esp + 0x3c], ebp
call fcn.0046d5f3
add esp, 4
cmp eax, ebp
je 0x498834
lea edx, [esp + 0x3c]
mov dword [eax], edx
jmp 0x498836
xor eax, eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x48], ebp
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x50], ebp
mov dword [esp + 0x54], ebp
mov dword [esp + 0x58], ebp
mov dword [esp + 0x5c], ebp
mov dword [esp + 0x60], ebp
mov byte [esp + 0x64], 0
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], ebp
mov dword [esp + 0x70], ebp
mov dword [esp + 0x74], ebp
mov byte [esp + 0x78], 0
mov dword [esp + 0x7c], ebp
mov dword [esp + 0x80], ebp
mov dword [esp + 0x84], ebp
mov dword [esp + 0x88], ebp
mov byte [esp + 0x8c], 0
cmp ebx, ebp
jne 0x49892d
call fcn.0046d2c9
xor eax, eax
cmp edi, dword [eax + 0x10]
jb 0x4988aa
call fcn.0046d2c9
push 0xffffffffffffffff
push ebp
xor eax, eax
push edi
lea ecx, [esp + 0xd8]
mov dword [esp + 0xf0], 7
mov dword [esp + 0xec], ebp
mov word [esp + 0xdc], ax
call fcn.0040bd30
or dword [esp + 0x10], 1
push ebp
push 1
push str._._:__d_K_total___d_K_used___d_K_.
lea ecx, [esp + 0xd0]
call fcn.0040a9a0
push eax
lea ecx, [esp + 0x3c]
push ecx
lea edx, [esp + 0xd8]
push edx
call fcn.0040e8c0
mov esi, dword [esp + 0x5c]
add esp, 0x10
test al, al
je 0x498934
mov ecx, esi
sub ecx, dword [esp + 0x48]
mov eax, 0x66666667
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 5
jne 0x498934
mov bl, 1
jmp 0x498936
mov eax, dword [ebx]
jmp 0x4988a0
xor bl, bl
test byte [esp + 0x10], 1
je 0x498952
and dword [esp + 0x10], 0xfffffffe
lea ecx, [esp + 0xc4]
call fcn.0040aa30
mov esi, dword [esp + 0x4c]
test bl, bl
jne 0x498add
or dword [esp + 0x10], 2
push ebp
push 1
push str.___w_0_W_d_W_d_W_d_W_d___W_._
lea ecx, [esp + 0xc0]
call fcn.0040a9a0
push eax
lea ecx, [esp + 0x3c]
push ecx
lea edx, [esp + 0xd8]
push edx
call fcn.0040e8c0
mov esi, dword [esp + 0x5c]
add esp, 0x10
test al, al
je 0x4989b1
mov ecx, esi
sub ecx, dword [esp + 0x48]
mov eax, 0x66666667
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 5
jne 0x4989b1
mov bl, 1
jmp 0x4989b3
xor bl, bl
test byte [esp + 0x10], 2
je 0x4989cf
and dword [esp + 0x10], 0xfffffffd
lea ecx, [esp + 0xb4]
call fcn.0040aa30
mov esi, dword [esp + 0x4c]
test bl, bl
jne 0x498c5b
or dword [esp + 0x10], 4
push ebp
push 1
push 0x4ce6a0
lea ecx, [esp + 0xc8]
call fcn.0040a9a0
push eax
lea ecx, [esp + 0x3c]
push ecx
lea edx, [esp + 0xd8]
push edx
call fcn.0040e8c0
add esp, 0x10
test al, al
je 0x498a2c
mov ecx, dword [esp + 0x4c]
sub ecx, dword [esp + 0x48]
mov eax, 0x66666667
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 5
jne 0x498a2c
mov bl, 1
jmp 0x498a2e
xor bl, bl
test byte [esp + 0x10], 4
je 0x498a46
and dword [esp + 0x10], 0xfffffffb
lea ecx, [esp + 0xbc]
call fcn.0040aa30
test bl, bl
jne 0x498dd9
cmp dword [esp + 0xe4], 8
jb 0x498a68
mov ecx, dword [esp + 0xd0]
push ecx
call fcn.0046d0e6
add esp, 4
mov eax, dword [esp + 0x48]
xor edx, edx
mov dword [esp + 0xe4], 7
mov dword [esp + 0xe0], ebp
mov word [esp + 0xd0], dx
cmp eax, ebp
je 0x498a95
push eax
call fcn.0046d0e6
add esp, 4
mov eax, dword [esp + 0x3c]
push eax
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x50], ebp
mov dword [esp + 0x54], ebp
call fcn.0046d0e6
mov eax, dword [esp + 0xb0]
add esp, 4
cmp eax, ebp
jne 0x498ad9
call fcn.0046d2c9
xor eax, eax
cmp edi, dword [eax + 0x10]
jb 0x498aca
call fcn.0046d2c9
mov ebx, dword [esp + 0xac]
add edi, 0x1c
jmp 0x4987f0
mov eax, dword [eax]
jmp 0x498ac0
sub esi, dword [esp + 0x48]
mov eax, 0x66666667
imul esi
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 2
ja 0x498afd
lea ecx, [esp + 0x7c]
jmp 0x498b04
mov ecx, dword [esp + 0x48]
add ecx, 0x28
lea edx, [esp + 0x90]
push edx
call fcn.0040ab00
mov edi, 8
cmp dword [eax + 0x18], edi
jb 0x498b20
mov eax, dword [eax + 4]
jmp 0x498b23
add eax, 4
mov esi, dword [sym.imp.SHLWAPI.dll_StrToIntW]
push eax
call esi
mov ecx, dword [esp + 0x30]
mov dword [ecx], eax
cmp dword [esp + 0xa8], edi
jb 0x498b4b
mov edx, dword [esp + 0x94]
push edx
call fcn.0046d0e6
add esp, 4
mov ecx, dword [esp + 0x4c]
sub ecx, dword [esp + 0x48]
mov eax, 0x66666667
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 4
ja 0x498b6f
lea ecx, [esp + 0x7c]
jmp 0x498b76
mov ecx, dword [esp + 0x48]
add ecx, 0x50
lea eax, [esp + 0x90]
push eax
call fcn.0040ab00
cmp dword [eax + 0x18], edi
jb 0x498b8d
mov eax, dword [eax + 4]
jmp 0x498b90
add eax, 4
push eax
call esi
mov ecx, dword [esp + 0x14]
mov dword [ecx], eax
cmp dword [esp + 0xa8], edi
jb 0x498bb2
mov edx, dword [esp + 0x94]
push edx
call fcn.0046d0e6
add esp, 4
cmp dword [esp + 0xe4], edi
jb 0x498bcb
mov eax, dword [esp + 0xd0]
push eax
call fcn.0046d0e6
add esp, 4
mov eax, dword [esp + 0x48]
xor ecx, ecx
mov dword [esp + 0xe4], 7
mov dword [esp + 0xe0], ebp
mov word [esp + 0xd0], cx
cmp eax, ebp
je 0x498bf8
push eax
call fcn.0046d0e6
add esp, 4
mov edx, dword [esp + 0x3c]
push edx
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x50], ebp
mov dword [esp + 0x54], ebp
call fcn.0046d0e6
mov eax, dword [esp + 0x28]
add esp, 4
cmp eax, ebp
je 0x498c3b
mov ecx, dword [esp + 0x14]
push ecx
mov ecx, dword [esp + 0x2c]
lea edx, [esp + 0x24]
push edx
push ecx
push eax
call fcn.00441f00
mov edx, dword [esp + 0x34]
push edx
call fcn.0046d0e6
add esp, 0x14
mov eax, dword [esp + 0x18]
push eax
mov dword [esp + 0x28], ebp
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x30], ebp
call fcn.0046d0e6
add esp, 4
mov al, 1
jmp 0x498ecd
sub esi, dword [esp + 0x48]
mov eax, 0x66666667
imul esi
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 1
ja 0x498c7b
lea ecx, [esp + 0x7c]
jmp 0x498c82
mov ecx, dword [esp + 0x48]
add ecx, 0x14
lea edx, [esp + 0x90]
push edx
call fcn.0040ab00
mov edi, 8
cmp dword [eax + 0x18], edi
jb 0x498c9e
mov eax, dword [eax + 4]
jmp 0x498ca1
add eax, 4
mov esi, dword [sym.imp.SHLWAPI.dll_StrToIntW]
push eax
call esi
mov ecx, dword [esp + 0x30]
mov dword [ecx], eax
cmp dword [esp + 0xa8], edi
jb 0x498cc9
mov edx, dword [esp + 0x94]
push edx
call fcn.0046d0e6
add esp, 4
mov ecx, dword [esp + 0x4c]
sub ecx, dword [esp + 0x48]
mov eax, 0x66666667
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 3
ja 0x498ced
lea ecx, [esp + 0x7c]
jmp 0x498cf4
mov ecx, dword [esp + 0x48]
add ecx, 0x3c
lea eax, [esp + 0x90]
push eax
call fcn.0040ab00
cmp dword [eax + 0x18], edi
jb 0x498d0b
mov eax, dword [eax + 4]
jmp 0x498d0e
add eax, 4
push eax
call esi
mov ecx, dword [esp + 0x14]
mov dword [ecx], eax
cmp dword [esp + 0xa8], edi
jb 0x498d30
mov edx, dword [esp + 0x94]
push edx
call fcn.0046d0e6
add esp, 4
cmp dword [esp + 0xe4], edi
jb 0x498d49
mov eax, dword [esp + 0xd0]
push eax
call fcn.0046d0e6
add esp, 4
mov eax, dword [esp + 0x48]
xor ecx, ecx
mov dword [esp + 0xe4], 7
mov dword [esp + 0xe0], ebp
mov word [esp + 0xd0], cx
cmp eax, ebp
je 0x498d76
push eax
call fcn.0046d0e6
add esp, 4
mov edx, dword [esp + 0x3c]
push edx
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x50], ebp
mov dword [esp + 0x54], ebp
call fcn.0046d0e6
mov eax, dword [esp + 0x28]
add esp, 4
cmp eax, ebp
je 0x498db9
mov ecx, dword [esp + 0x14]
push ecx
mov ecx, dword [esp + 0x2c]
lea edx, [esp + 0x24]
push edx
push ecx
push eax
call fcn.00441f00
mov edx, dword [esp + 0x34]
push edx
call fcn.0046d0e6
add esp, 0x14
mov eax, dword [esp + 0x18]
push eax
mov dword [esp + 0x28], ebp
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x30], ebp
call fcn.0046d0e6
add esp, 4
mov al, 1
jmp 0x498ecd
sub esp, 0x1c
push esp
push 2
lea ecx, [esp + 0x58]
call fcn.0040ac30
mov ecx, eax
call fcn.0040ab00
call fcn.00497190
mov ecx, dword [esp + 0x4c]
push esp
mov dword [ecx], eax
push 4
lea ecx, [esp + 0x58]
call fcn.0040ac30
mov ecx, eax
call fcn.0040ab00
call fcn.00497190
mov edx, dword [esp + 0x30]
add esp, 0x1c
cmp dword [esp + 0xe4], 8
mov dword [edx], eax
jb 0x498e35
mov eax, dword [esp + 0xd0]
push eax
call fcn.0046d0e6
add esp, 4
mov eax, dword [esp + 0x48]
xor ecx, ecx
mov dword [esp + 0xe4], 7
mov dword [esp + 0xe0], ebp
mov word [esp + 0xd0], cx
cmp eax, ebp
je 0x498e62
push eax
call fcn.0046d0e6
add esp, 4
mov edx, dword [esp + 0x3c]
push edx
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x50], ebp
mov dword [esp + 0x54], ebp
call fcn.0046d0e6
add esp, 4
lea ecx, [esp + 0x18]
call fcn.0044b960
mov al, 1
jmp 0x498ecd
mov eax, dword [esp + 0x24]
cmp eax, ebp
je 0x498eb2
mov ecx, dword [esp + 0x14]
push ecx
mov ecx, dword [esp + 0x2c]
lea edx, [esp + 0x24]
push edx
push ecx
push eax
call fcn.00441f00
mov edx, dword [esp + 0x34]
push edx
call fcn.0046d0e6
add esp, 0x14
mov eax, dword [esp + 0x18]
push eax
mov dword [esp + 0x28], ebp
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x30], ebp
call fcn.0046d0e6
add esp, 4
xor al, al
mov ecx, dword [esp + 0xe8]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0046da8a
add esp, 0xdc
ret