Function at 0x43c4c0
Capabilities:
Enumerate pe sections
Resolve function by parsing pe exports

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0xf0]
cmp eax, dword [ecx + 8]
jbe 0x43cdd4
sub esp, 0x170
mov ecx, dword [esp + 0x174]
cmp ecx, 0
je 0x43cdcd
mov edx, dword [ecx]
mov eax, dword [ecx]
mov ebp, dword [eax]
cmp ebp, 0xfffffffb
jne 0x43ccc7
movzx ebp, byte [edx + 4]
xchg ebp, eax
cmp al, 0
xchg ebp, eax
jne 0x43ccc7
movzx ebp, byte [edx + 5]
xchg ebp, eax
cmp al, 0
xchg ebp, eax
jne 0x43ccc7
movzx ebp, byte [edx + 6]
xchg ebp, eax
cmp al, 1
xchg ebp, eax
jne 0x43ccc7
movzx ebp, byte [edx + 7]
xchg ebp, eax
cmp al, 4
xchg ebp, eax
jne 0x43ccc7
mov ebx, dword [ecx + 0x10]
dec ebx
mov dword [esp + 0x18], ebx
lea edi, [esp + 0x58]
xor eax, eax
call fcn.0044cec0
xor eax, eax
mov ebp, dword [esp + 0x18]
cmp eax, ebp
jge 0x43c8b6
mov ebp, eax
inc ebp
mov esi, dword [ecx + 0x10]
cmp ebp, esi
jae 0x43ccc0
mov esi, dword [ecx + 0xc]
shl ebp, 3
add esi, ebp
mov edi, dword [esi]
mov ebp, eax
mov esi, dword [ecx + 0x10]
cmp eax, esi
jae 0x43ccb9
mov esi, dword [ecx + 0xc]
shl ebp, 3
add esi, ebp
mov ebx, dword [esi]
cmp edi, ebx
jae 0x43c89a
mov ebp, eax
mov esi, dword [ecx + 0x10]
cmp eax, esi
jae 0x43ccb2
mov esi, dword [ecx + 0xc]
shl ebp, 3
add esi, ebp
mov edx, dword [esi + 4]
mov esi, dword [ecx + 4]
cmp edx, esi
jae 0x43ccab
mov esi, dword [ecx]
add esi, edx
mov dword [esp + 0x118], esi
mov ebp, eax
inc ebp
mov esi, dword [ecx + 0x10]
cmp ebp, esi
jae 0x43cca4
mov esi, dword [ecx + 0xc]
shl ebp, 3
add esi, ebp
mov edx, dword [esi + 4]
mov esi, dword [ecx + 4]
cmp edx, esi
jae 0x43cc9d
mov esi, dword [ecx]
add esi, edx
mov ebx, 0x548dc8
mov dword [esp + 0x124], ebx
mov dword [esp + 0x128], 3
mov ebx, eax
mov dword [esp + 0x20], eax
inc ebx
mov eax, ebx
mov ebx, dword [esp + 0x18]
cmp eax, ebx
jge 0x43c632
mov dword [esp], esi
call dbg.runtime.funcname
mov ebx, dword [esp + 4]
mov dword [esp + 0x124], ebx
mov ebx, dword [esp + 8]
mov dword [esp + 0x128], ebx
mov ebx, dword [esp + 0x118]
mov dword [esp], ebx
call dbg.runtime.funcname
mov ebp, dword [esp + 0x20]
mov ebx, dword [esp + 4]
mov dword [esp + 0x134], ebx
mov ebx, dword [esp + 8]
mov dword [esp + 0x138], ebx
mov ebx, dword [esp + 0x174]
mov edi, ebp
mov esi, dword [ebx + 0x10]
cmp ebp, esi
jae 0x43cc96
mov esi, dword [ebx + 0xc]
shl ebp, 3
add esi, ebp
mov ebx, dword [esi]
xor ecx, ecx
mov dword [esp + 0x38], ebx
mov dword [esp + 0x3c], ecx
mov ebp, edi
inc ebp
mov ebx, dword [esp + 0x174]
mov esi, dword [ebx + 0x10]
cmp ebp, esi
jae 0x43cc8f
mov esi, dword [ebx + 0xc]
shl ebp, 3
add esi, ebp
mov ebx, dword [esi]
xor ecx, ecx
mov dword [esp + 0x40], ebx
mov dword [esp + 0x44], ecx
call dbg.runtime.printlock
mov ebx, 0x57a5e0
mov dword [esp], ebx
mov dword [esp + 4], 0x34
call dbg.runtime.printstring
call dbg.runtime.printsp
mov eax, dword [esp + 0x38]
mov dword [esp], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 4], eax
call dbg.runtime.printhex
call dbg.runtime.printsp
mov ebx, dword [esp + 0x134]
mov dword [esp], ebx
mov ebx, dword [esp + 0x138]
mov dword [esp + 4], ebx
call dbg.runtime.printstring
call dbg.runtime.printsp
mov ebx, 0x5489bc
mov dword [esp], ebx
mov dword [esp + 4], 1
call dbg.runtime.printstring
call dbg.runtime.printsp
mov eax, dword [esp + 0x40]
mov dword [esp], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 4], eax
call dbg.runtime.printhex
call dbg.runtime.printsp
mov ebx, dword [esp + 0x124]
mov dword [esp], ebx
mov ebx, dword [esp + 0x128]
mov dword [esp + 4], ebx
call dbg.runtime.printstring
call dbg.runtime.printnl
call dbg.runtime.printunlock
mov ecx, dword [esp + 0x174]
xor eax, eax
mov ebp, dword [esp + 0x20]
cmp eax, ebp
jg 0x43c87a
cmp ecx, 0
je 0x43cc88
mov dword [esp + 0x1c], eax
mov ebp, eax
mov esi, dword [ecx + 0x10]
cmp eax, esi
jae 0x43cc81
mov esi, dword [ecx + 0xc]
shl ebp, 3
add esi, ebp
mov eax, dword [esi + 4]
mov esi, dword [ecx + 4]
cmp eax, esi
jae 0x43cc7a
mov esi, dword [ecx]
add esi, eax
mov dword [esp], esi
call dbg.runtime.funcname
mov ebx, dword [esp + 4]
mov dword [esp + 0x134], ebx
mov ebx, dword [esp + 8]
mov dword [esp + 0x138], ebx
mov ebx, dword [esp + 0x174]
mov ebp, dword [esp + 0x1c]
mov esi, dword [ebx + 0x10]
cmp ebp, esi
jae 0x43cc73
mov esi, dword [ebx + 0xc]
shl ebp, 3
add esi, ebp
mov ebx, dword [esi]
xor ecx, ecx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ecx
call dbg.runtime.printlock
mov ebx, 0x548d00
mov dword [esp], ebx
mov dword [esp + 4], 1
call dbg.runtime.printstring
mov eax, dword [esp + 0x30]
mov dword [esp], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 4], eax
call dbg.runtime.printhex
mov ebx, 0x5488fc
mov dword [esp], ebx
mov dword [esp + 4], 1
call dbg.runtime.printstring
mov ebx, dword [esp + 0x134]
mov dword [esp], ebx
mov ebx, dword [esp + 0x138]
mov dword [esp + 4], ebx
call dbg.runtime.printstring
mov ebx, 0x548cfc
mov dword [esp], ebx
mov dword [esp + 4], 1
call dbg.runtime.printstring
call dbg.runtime.printunlock
mov ecx, dword [esp + 0x174]
mov eax, dword [esp + 0x1c]
inc eax
mov ebp, dword [esp + 0x20]
cmp eax, ebp
jle 0x43c76f
mov ebx, 0x56b580
mov dword [esp], ebx
mov dword [esp + 4], 0x1c
call dbg.runtime.throw
mov ecx, dword [esp + 0x174]
mov eax, dword [esp + 0x20]
mov ebx, dword [esp + 0x18]
sub ebx, eax
cmp ebx, 5
jl 0x43cb4f
inc eax
mov ebp, dword [esp + 0x18]
cmp eax, ebp
jl 0x43c55f
mov eax, dword [ecx + 0x28]
cmp dword [ecx + 0x10], 0
jbe 0x43cb48
mov ebp, dword [ecx + 0xc]
mov ebx, dword [ebp]
cmp eax, ebx
jne 0x43cb20
mov eax, dword [ecx + 0x2c]
mov ebp, dword [esp + 0x18]
mov esi, dword [ecx + 0x10]
cmp ebp, esi
jae 0x43cb41
mov esi, dword [ecx + 0xc]
shl ebp, 3
add esi, ebp
mov ebx, dword [esi]
cmp eax, ebx
jne 0x43cb20
cmp ecx, 0
je 0x43cb19
mov esi, dword [ecx + 0x78]
mov eax, dword [ecx + 0x7c]
mov ebp, dword [ecx + 0x80]
mov dword [esp + 0x144], ebp
xor edx, edx
mov dword [esp + 0x140], eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x13c], esi
mov eax, esi
mov ebp, dword [esp + 0x28]
cmp edx, ebp
jge 0x43ca27
mov dword [esp + 0x120], eax
cmp eax, 0
je 0x43cb12
mov ebp, dword [eax]
mov dword [esp + 0x15c], ebp
mov ebp, dword [eax + 4]
mov dword [esp + 0x160], ebp
mov edi, dword [eax + 8]
mov esi, dword [eax + 0xc]
mov eax, dword [eax + 0x10]
mov dword [esp + 0x2c], edx
mov ebx, dword [esp + 0x15c]
mov dword [esp + 0x148], ebx
mov ebx, dword [esp + 0x160]
mov dword [esp + 0x14c], ebx
mov dword [esp + 0x164], edi
mov dword [esp + 0x168], esi
mov dword [esp + 0x16c], eax
mov dword [esp + 0x150], edi
mov dword [esp + 0x134], edi
mov dword [esp + 0x154], esi
mov edi, esi
mov dword [esp + 0x158], eax
cmp eax, 0
je 0x43cb0b
mov ebp, dword [eax]
mov dword [esp + 0x12c], ebp
mov esi, dword [eax + 4]
cmp edi, esi
jne 0x43ca2e
mov ebp, dword [esp + 0x134]
mov dword [esp], ebp
mov dword [esp + 0x138], edi
mov dword [esp + 4], edi
mov ebp, dword [esp + 0x12c]
mov dword [esp + 8], ebp
mov dword [esp + 0x130], esi
mov dword [esp + 0xc], esi
call dbg.runtime.eqstring
mov ecx, dword [esp + 0x174]
movzx ebx, byte [esp + 0x10]
cmp bl, 0
je 0x43ca2e
mov eax, dword [esp + 0x120]
add eax, 0x14
mov edx, dword [esp + 0x2c]
inc edx
mov ebp, dword [esp + 0x28]
cmp edx, ebp
jl 0x43c933
add esp, 0x170
ret
cmp ecx, 0
je 0x43cb04
mov ebp, dword [ecx + 0x70]
mov dword [esp + 0x12c], ebp
mov ebp, dword [ecx + 0x74]
mov dword [esp + 0x130], ebp
mov ebx, dword [esp + 0x148]
mov dword [esp + 0x134], ebx
mov ebx, dword [esp + 0x14c]
mov dword [esp + 0x138], ebx
call dbg.runtime.printlock
mov ebx, 0x569800
mov dword [esp], ebx
mov dword [esp + 4], 0x1d
call dbg.runtime.printstring
call dbg.runtime.printsp
mov ebx, dword [esp + 0x12c]
mov dword [esp], ebx
mov ebx, dword [esp + 0x130]
mov dword [esp + 4], ebx
call dbg.runtime.printstring
call dbg.runtime.printsp
mov ebx, 0x548d3c
mov dword [esp], ebx
mov dword [esp + 4], 3
call dbg.runtime.printstring
call dbg.runtime.printsp
mov ebx, dword [esp + 0x134]
mov dword [esp], ebx
mov ebx, dword [esp + 0x138]
mov dword [esp + 4], ebx
call dbg.runtime.printstring
call dbg.runtime.printnl
call dbg.runtime.printunlock
mov ebx, 0x55a710
mov dword [esp], ebx
mov dword [esp + 4], 0xc
call dbg.runtime.throw
mov ecx, dword [esp + 0x174]
jmp 0x43ca0c
mov dword [ecx], eax
jmp 0x43ca37
mov dword [eax], eax
jmp 0x43c9bb
mov dword [eax], eax
jmp 0x43c943
mov dword [ecx], eax
jmp 0x43c8fe
mov ebx, 0x565020
mov dword [esp], ebx
mov dword [esp + 4], 0x16
call dbg.runtime.throw
mov ecx, dword [esp + 0x174]
jmp 0x43c8f5
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicindex
ud2
mov ebp, eax
mov esi, dword [ecx + 0x10]
cmp eax, esi
jae 0x43cc6c
mov esi, dword [ecx + 0xc]
shl ebp, 3
add esi, ebp
mov edx, dword [esi + 4]
mov esi, dword [ecx + 4]
cmp edx, esi
jae 0x43cc65
mov esi, dword [ecx]
add esi, edx
mov edx, esi
mov edi, dword [esi]
mov ebp, eax
mov dword [esp + 0x20], eax
inc ebp
mov ebx, dword [esp + 0x18]
cmp ebp, ebx
jge 0x43cbc6
mov ebp, eax
inc ebp
mov esi, dword [ecx + 0x10]
cmp ebp, esi
jae 0x43cc5e
mov esi, dword [ecx + 0xc]
shl ebp, 3
add esi, ebp
mov eax, dword [esi + 4]
mov esi, dword [ecx + 4]
cmp eax, esi
jae 0x43cc57
mov esi, dword [ecx]
add esi, eax
mov ebp, dword [esi + 0x18]
cmp ebp, 0
je 0x43cbc6
mov edi, dword [esi]
sub edi, 0x10
mov ebp, dword [edx]
cmp ebp, edi
jbe 0x43cbc6
mov edi, dword [edx]
mov dword [esp], edx
mov dword [esp + 0x11c], edx
mov ebp, dword [edx + 0x14]
mov dword [esp + 4], ebp
mov dword [esp + 0x24], edi
mov dword [esp + 8], edi
lea ebx, [esp + 0x58]
mov dword [esp + 0xc], ebx
mov byte [esp + 0x10], 1
call dbg.runtime.pcvalue
mov eax, dword [esp + 0x11c]
mov dword [esp], eax
mov ebp, dword [eax + 0x18]
mov dword [esp + 4], ebp
mov ebx, dword [esp + 0x24]
mov dword [esp + 8], ebx
lea ebx, [esp + 0x58]
mov dword [esp + 0xc], ebx
mov byte [esp + 0x10], 1
call dbg.runtime.pcvalue
mov eax, dword [esp + 0x11c]
mov dword [esp], eax
mov ebp, dword [eax + 0x10]
mov dword [esp + 4], ebp
mov ebx, dword [esp + 0x24]
mov dword [esp + 8], ebx
lea ebx, [esp + 0x58]
mov dword [esp + 0xc], ebx
mov byte [esp + 0x10], 1
call dbg.runtime.pcvalue
mov ecx, dword [esp + 0x174]
mov eax, dword [esp + 0x20]
jmp 0x43c8a9
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicindex
ud2
mov dword [ecx], eax
jmp 0x43c778
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicindex
ud2
mov ebp, dword [eax]
xor ecx, ecx
mov dword [esp + 0x50], ebp
mov dword [esp + 0x54], ecx
movzx ebp, byte [edx + 4]
xor ecx, ecx
mov dword [esp + 0x48], ebp
mov dword [esp + 0x4c], ecx
movzx ebp, byte [edx + 5]
xor ecx, ecx
mov dword [esp + 0x40], ebp
mov dword [esp + 0x44], ecx
movzx ebp, byte [edx + 6]
xor ecx, ecx
mov dword [esp + 0x38], ebp
mov dword [esp + 0x3c], ecx
movzx ebp, byte [edx + 7]
xor ecx, ecx
mov dword [esp + 0x30], ebp
mov dword [esp + 0x34], ecx
call dbg.runtime.printlock
mov ebx, 0x572f60
mov dword [esp], ebx
mov dword [esp + 4], 0x26
call dbg.runtime.printstring
call dbg.runtime.printsp
mov eax, dword [esp + 0x50]
mov dword [esp], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 4], eax
call dbg.runtime.printhex
call dbg.runtime.printsp
mov eax, dword [esp + 0x48]
mov dword [esp], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 4], eax
call dbg.runtime.printhex
call dbg.runtime.printsp
mov eax, dword [esp + 0x40]
mov dword [esp], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 4], eax
call dbg.runtime.printhex
call dbg.runtime.printsp
mov eax, dword [esp + 0x38]
mov dword [esp], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 4], eax
call dbg.runtime.printhex
call dbg.runtime.printsp
mov eax, dword [esp + 0x30]
mov dword [esp], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 4], eax
call dbg.runtime.printhex
call dbg.runtime.printnl
call dbg.runtime.printunlock
mov ebx, 0x56b500
mov dword [esp], ebx
mov dword [esp + 4], 0x1e
call dbg.runtime.throw
mov ecx, dword [esp + 0x174]
jmp 0x43c53e
mov dword [ecx], eax
jmp 0x43c4f3
call dbg.runtime.morestack_noctxt
jmp dbg.runtime.moduledataverify1