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

Disassembly:
sub esp, 0x3fc
push ebx
mov ebx, dword [esp + reloc.KERNEL32.dll_GetProcessHeap]
push ebp
mov ebp, dword [esp + reloc.KERNEL32.dll_GetProcessHeap]
mov ecx, dword [ebx + 0x10]
mov edx, dword [ebx + 0x14]
mov eax, dword [ebp + 0x44]
mov dword [esp + 0x34], ecx
mov ecx, dword [ebp + 0xc]
mov dword [esp + 0x20], eax
mov eax, dword [ebx + 8]
push esi
mov dword [esp + 0x44], eax
mov eax, dword [ebp + 0x10]
mov esi, eax
push edi
test ch, 1
mov dword [esp + 0x44], edx
mov dword [esp + 0x10], esi
jne 0x448413
mov edx, eax
and edx, 0xfff83fff
mov dword [esp + 0x10], edx
mov esi, edx
test esi, 0x40000
je 0x44843c
or esi, 0x4000
test esi, 0x40000
mov dword [esp + 0x10], esi
je 0x44843c
test ah, 8
je 0x44843c
or esi, 0x8000
mov dword [esp + 0x10], esi
test esi, 0x4000
je 0x44844e
or esi, 0x10000
mov dword [esp + 0x10], esi
test esi, 0x8000
je 0x448463
and esi, 0xffffffbf
or esi, 0x20000
mov dword [esp + 0x10], esi
test esi, 0x20000
je 0x448475
and esi, 0xfffffeff
mov dword [esp + 0x10], esi
test esi, 0x10000
je 0x448487
and esi, 0xffffff7f
mov dword [esp + 0x10], esi
mov edx, dword [ebp + 8]
test dl, 4
jne 0x448499
and esi, 0xfffcfe7f
mov dword [esp + 0x10], esi
test cl, 2
jne 0x4484a8
and esi, 0xffff3baf
mov dword [esp + 0x10], esi
test cl, 0x40
je 0x4484b7
and esi, 0xffffcfff
mov dword [esp + 0x10], esi
test esi, 0x20000000
je 0x4484c9
and esi, 0xffff7fff
mov dword [esp + 0x10], esi
test esi, 0x2000000
je 0x4484db
and esi, 0xffffbfff
mov dword [esp + 0x10], esi
xor eax, eax
mov ecx, 0x6a
lea edi, [esp + 0x64]
mov dword [esp + 0x40], eax
rep stosd dword es:[edi], eax
mov ecx, dword [ebp + 0x20]
mov dword [esp + 0x1c], eax
shr edx, 2
and edx, 1
mov dword [esp + reloc.KERNEL32.dll_GetProcessHeap], ecx
mov dword [esp + 0x24], eax
mov eax, dword [ebx + 0x64]
mov edi, dword [esp + 0x48]
mov dword [esp + reloc.KERNEL32.dll_GetProcessHeap], edx
mov edx, dword [ebx + 0x6c]
lea ecx, reloc.KERNEL32.dll_GetProcessHeap
and ecx, 0xffffffc0
mov dword [esp + 0xf8], eax
mov eax, dword [ebx + 0x78]
and esi, 0x1000
not edx
mov dword [esp + reloc.KERNEL32.dll_GetProcessHeap], ecx
mov ecx, dword [esp + reloc.KERNEL32.dll_GetProcessHeap]
and edx, 1
mov dword [esp + reloc.KERNEL32.dll_GetProcessHeap], esi
mov dword [esp + reloc.KERNEL32.dll_GetProcessHeap], eax
mov eax, dword [0x50bc50]
mov dword [esp + reloc.KERNEL32.dll_GetProcessHeap], edx
mov edx, dword [ecx + 4]
xor esi, esi
mov dword [esp + reloc.KERNEL32.dll_GetProcessHeap], edi
cmp eax, esi
mov dword [esp + reloc.KERNEL32.dll_GetProcessHeap], edx
je 0x448575
call eax
mov ebx, dword [esp + 0x44]
mov dword [esp + 0x18], esi
cmp ebx, esi
jbe 0x4489f4
mov dword [esp + 0x4c], esi
mov dword [esp + 0x34], esi
mov esi, dword [esp + 0x3c]
mov dword [esp + 0x30], 0
lea eax, [esi + esi*2]
lea eax, [eax + eax*4]
lea eax, [esi + eax*4]
shl eax, 3
shl edi, 4
mov dword [esp + 0x5c], eax
mov dword [esp + 0x58], edi
mov eax, dword [esp + 0x34]
xor edx, edx
div ebx
mov ecx, dword [esp + reloc.KERNEL32.dll_GetProcessHeap]
xor edx, edx
mov dword [esp + 0x14], 0
imul eax, ebx
lea eax, [eax + ecx - 1]
div ecx
imul eax, esi
test esi, esi
mov dword [esp + 0x2c], eax
jbe 0x4489cf
mov ecx, dword [esp + 0x4c]
mov esi, dword [esp + 0x5c]
mov edx, dword [esp + 0x30]
mov eax, ecx
add ecx, esi
mov dword [esp + 0x38], edx
mov dword [esp + 0x4c], ecx
jmp 0x448603
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x28]
mov ebx, dword [esp + reloc.KERNEL32.dll_GetProcessHeap]
lea esi, [eax + ecx]
mov ecx, dword [ebx + 0x44]
add ecx, eax
add eax, 0x1e8
mov dword [esp + 0x60], eax
mov eax, dword [esp + reloc.KERNEL32.dll_GetProcessHeap]
mov dword [esp + 0x54], ecx
lea edi, reloc.KERNEL32.dll_GetProcessHeap
mov ecx, dword [eax + 8]
mov eax, dword [ebx + 0x38]
push edi
push ecx
mov ecx, dword [ebp + 0x38]
add eax, edx
add ecx, edx
push eax
push ecx
call dword [0x50bc68]
mov edi, dword [edi]
mov dword [esi + reloc.KERNEL32.dll_GetProcessHeap], eax
mov eax, dword [esi + reloc.KERNEL32.dll_GetProcessHeap]
add esp, 0x10
cmp edi, eax
mov dword [esp + 0x20], edi
jg 0x448664
mov dword [esp + 0x20], eax
mov ecx, dword [esi + reloc.KERNEL32.dll_GetProcessHeap]
mov edx, dword [esi + reloc.KERNEL32.dll_GetProcessHeap]
cmp ecx, edx
jg 0x448676
mov ecx, edx
cmp dword [esp + 0x20], ecx
jle 0x448684
cmp edi, eax
jle 0x448696
mov eax, edi
jmp 0x448696
mov eax, dword [esi + reloc.KERNEL32.dll_GetProcessHeap]
mov ecx, dword [esi + reloc.KERNEL32.dll_GetProcessHeap]
cmp eax, ecx
jg 0x448696
mov eax, ecx
lea edx, [eax*4]
mov eax, dword [esp + reloc.KERNEL32.dll_GetProcessHeap]
test eax, eax
mov dword [esp + 0x20], edx
je 0x44873a
mov ebx, dword [esp + 0x48]
mov eax, dword [esp + 0x14]
shr ebx, 1
mov edi, ebx
mov edx, dword [ebp + 0x40]
imul edi, dword [esp + 0x18]
add edi, eax
mov eax, dword [esp + reloc.KERNEL32.dll_GetProcessHeap]
add eax, 0x38
push ebx
shl edi, 3
mov ecx, dword [eax + 8]
add edx, edi
add ecx, edi
push ecx
push edx
call dword [0x50bc64]
mov edx, dword [ebp + 0x3c]
mov dword [esp + 0x5c], eax
mov eax, dword [esp + reloc.KERNEL32.dll_GetProcessHeap]
push ebx
add eax, 0x38
add edx, edi
mov ecx, dword [eax + 4]
add ecx, edi
push ecx
push edx
call dword [0x50bc64]
mov ecx, dword [esp + 0x68]
mov ebx, dword [esp + reloc.KERNEL32.dll_GetProcessHeap]
add ecx, eax
add esp, 0x18
mov dword [esp + 0xf4], ecx
mov edx, dword [esi + reloc.KERNEL32.dll_GetProcessHeap]
add edx, ecx
mov ecx, dword [esp + 0x20]
mov dword [esi + reloc.KERNEL32.dll_GetProcessHeap], edx
mov eax, dword [esp + 0xf4]
add ecx, eax
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x10]
mov eax, dword [esp + reloc.KERNEL32.dll_GetProcessHeap]
push ecx
add ebx, 0x38
push edx
mov edx, dword [esp + 0x20]
lea edi, [ebp + 0x38]
push ebx
push edi
lea ecx, [esp + 0x74]
push eax
mov eax, dword [esp + 0x28]
push ecx
mov ecx, dword [esp + 0x6c]
push edx
mov edx, dword [esp + reloc.KERNEL32.dll_GetProcessHeap]
push eax
mov eax, dword [esp + 0x40]
push ecx
push esi
push ebp
push edx
push eax
call fcn.0044a5a0
add esp, 0x34
test eax, eax
jne 0x44899c
mov edx, dword [esp + reloc.KERNEL32.dll_GetProcessHeap]
mov ecx, dword [esp + 0x2c]
push ecx
mov ecx, dword [esp + 0x2c]
mov eax, dword [edx + 0x44]
mov edx, dword [esp + reloc.KERNEL32.dll_GetProcessHeap]
push esi
push eax
push ecx
mov ecx, dword [ebp + 0xc]
lea eax, [esp + 0x74]
push edx
mov edx, dword [esp + 0x24]
push eax
mov eax, dword [esp + 0x30]
push ecx
mov ecx, dword [esp + 0x30]
push edx
mov edx, dword [esp + reloc.KERNEL32.dll_GetProcessHeap]
push eax
push ecx
mov ecx, dword [esp + reloc.KERNEL32.dll_GetProcessHeap]
mov eax, dword [edx]
push edi
mov edx, dword [ecx]
push eax
mov eax, dword [esp + reloc.KERNEL32.dll_GetProcessHeap]
push edx
mov ecx, dword [eax]
push ecx
push ebx
call fcn.00448f60
mov eax, dword [ebp + 0xc]
add esp, 0x3c
test ah, 1
je 0x448834
mov edx, dword [esp + 0x2c]
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [esp + reloc.KERNEL32.dll_GetProcessHeap]
push ecx
mov ecx, dword [ebp + 8]
push edx
mov edx, dword [esp + 0x1c]
push ebx
push edi
push ecx
mov ecx, dword [esp + 0x30]
push eax
mov eax, dword [esp + reloc.KERNEL32.dll_GetProcessHeap]
push edx
mov edx, dword [esp + 0x34]
push eax
mov eax, dword [esp + 0x4c]
push ecx
push edx
push eax
lea ecx, [esp + 0x94]
push esi
push ecx
call fcn.00451440
jmp 0x4488bf
test ah, 0x10
je 0x44887d
mov edx, dword [esp + 0x2c]
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [esp + reloc.KERNEL32.dll_GetProcessHeap]
push ecx
mov ecx, dword [ebp + 8]
push edx
mov edx, dword [esp + 0x1c]
push ebx
push edi
push ecx
mov ecx, dword [esp + 0x30]
push eax
mov eax, dword [esp + reloc.KERNEL32.dll_GetProcessHeap]
push edx
mov edx, dword [esp + 0x34]
push eax
mov eax, dword [esp + 0x4c]
push ecx
push edx
push eax
lea ecx, [esp + 0x94]
push esi
push ecx
call fcn.00454680
jmp 0x4488bf
mov edx, dword [esp + 0x20]
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [esp + reloc.KERNEL32.dll_GetProcessHeap]
push ecx
mov ecx, dword [ebp + 8]
push edx
mov edx, dword [esp + 0x1c]
push ebx
push edi
push ecx
mov ecx, dword [esp + 0x30]
push eax
mov eax, dword [esp + reloc.KERNEL32.dll_GetProcessHeap]
push edx
mov edx, dword [esp + 0x34]
push eax
mov eax, dword [esp + 0x4c]
push ecx
push edx
push eax
lea ecx, [esp + 0x94]
push esi
push ecx
call fcn.00448a30
mov eax, dword [esp + reloc.KERNEL32.dll_GetProcessHeap]
add esp, 0x38
test eax, eax
lea ebx, reloc.KERNEL32.dll_GetProcessHeap
jne 0x4488d5
mov ebx, esi
mov esi, dword [esi + 0xec]
mov eax, dword [esp + 0x40]
sub esi, 0
je 0x44894e
sub esi, 2
jne 0x44899c
mov ecx, dword [esp + 0x24]
mov edi, 3
add ecx, edi
lea esi, [ebx + 0x18]
mov dword [esp + 0x24], ecx
mov ecx, dword [esi]
cmp ecx, eax
jle 0x448909
mov eax, ecx
jmp 0x448914
or edx, reloc.KERNEL32.dll_GetProcessHeap
sub edx, ecx
cmp edx, eax
jle 0x448914
mov eax, edx
mov edx, ecx
imul edx, ecx
mov ecx, dword [esp + 0x1c]
add ecx, edx
mov dword [esp + 0x1c], ecx
mov ecx, dword [esi + 4]
cmp ecx, eax
jle 0x44892e
mov eax, ecx
jmp 0x448939
or edx, reloc.KERNEL32.dll_GetProcessHeap
sub edx, ecx
cmp edx, eax
jle 0x448939
mov eax, edx
mov edx, ecx
sub esi, 8
imul edx, ecx
mov ecx, dword [esp + 0x1c]
add ecx, edx
dec edi
mov dword [esp + 0x1c], ecx
jne 0x4488ff
mov ecx, dword [esp + 0x24]
mov edx, dword [ebx + 4]
inc ecx
mov edi, edx
mov dword [esp + 0x24], ecx
mov ecx, dword [ebx]
mov esi, ecx
imul edi, edx
mov ebx, dword [esp + 0x1c]
imul esi, ecx
add edi, ebx
add edi, esi
cmp ecx, eax
mov dword [esp + 0x1c], edi
jle 0x44897a
mov eax, ecx
jmp 0x448985
or esi, reloc.KERNEL32.dll_GetProcessHeap
sub esi, ecx
cmp esi, eax
jle 0x448985
mov eax, esi
cmp edx, eax
jle 0x44898d
mov eax, edx
jmp 0x448998
or ecx, reloc.KERNEL32.dll_GetProcessHeap
sub ecx, edx
cmp ecx, eax
jle 0x448998
mov eax, ecx
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x38]
mov ecx, dword [esp + 0x3c]
inc eax
add edx, 0x10
cmp eax, ecx
mov dword [esp + 0x14], eax
mov dword [esp + 0x38], edx
jb 0x4485fb
mov edi, dword [esp + 0x58]
mov ecx, dword [esp + reloc.KERNEL32.dll_GetProcessHeap]
mov esi, dword [esp + 0x3c]
mov ebx, dword [esp + 0x44]
mov edx, dword [esp + 0x34]
mov eax, dword [esp + 0x18]
add edx, ecx
inc eax
mov dword [esp + 0x34], edx
mov edx, dword [esp + 0x30]
add edx, edi
cmp eax, ebx
mov dword [esp + 0x18], eax
mov dword [esp + 0x30], edx
jb 0x4485b0
mov eax, dword [esp + 0x40]
push eax
call fcn.00447b20
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x28]
add esp, 4
mov dword [ebp + 0x20], eax
mov dword [ebp + reloc.KERNEL32.dll_GetProcessHeap], ecx
mov dword [ebp + reloc.KERNEL32.dll_GetProcessHeap], edx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x3fc
ret