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

Disassembly:
mov ecx, dword [0x7762b4]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x70]
cmp eax, dword [ecx + 8]
jbe 0x54d826
sub esp, 0xf0
mov ecx, dword [esp + 0xf4]
mov edx, dword [ecx + 4]
mov ebx, dword [ecx + 8]
xor eax, eax
jmp 0x54ce40
inc eax
cmp eax, ebx
jge 0x54ce52
mov ebp, dword [edx + eax*4]
cmp dword [ebp + 0x18], 0x1000
jne 0x54ce3f
jmp 0x54ce54
xor ebp, ebp
test ebp, ebp
je 0x54d2c4
mov edx, dword [ebp + 0x3c]
mov ebx, dword [edx + 8]
mov esi, dword [edx + 0xc]
mov dword [edx + 0x10], ebx
mov dword [edx + 0x14], esi
xor edx, edx
test edx, edx
jne 0x54d286
mov dword [esp + 0xd8], ebp
movzx edx, word [ecx]
cmp dx, 0x1df
je 0x54cf7f
cmp dx, 0x1f7
je 0x54cea8
xor eax, eax
xor edx, edx
xor ebx, ebx
xor esi, esi
xor edi, edi
xor eax, eax
mov dword [esp + 0x34], eax
xor eax, eax
jmp 0x54d00b
lea edi, [esp + 0x80]
xor eax, eax
call fcn.0046ac52
mov ecx, dword [ebp + 0x3c]
lea edx, [0x634d98]
mov dword [esp], edx
mov dword [esp + 4], ecx
lea ecx, [0x63634c]
mov dword [esp + 8], ecx
lea ebx, [0x776180]
mov dword [esp + 0xc], ebx
lea esi, [0x5b93c0]
mov dword [esp + 0x10], esi
lea esi, [esp + 0x80]
mov dword [esp + 0x14], esi
call sym.encoding_binary.Read
mov ecx, dword [esp + 0x18]
test ecx, ecx
jne 0x54cf45
mov eax, dword [esp + 0x94]
mov ecx, dword [esp + 0xa0]
mov edx, dword [esp + 0xa4]
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0xa8]
mov esi, dword [esp + 0xac]
mov edi, esi
mov dword [esp + 0x34], ebx
mov ebx, eax
mov esi, ebp
mov ebp, dword [esp + 0xd8]
mov eax, ecx
mov ecx, dword [esp + 0xf4]
jmp 0x54d00b
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], 0
mov dword [esp + 0x100], 0
mov dword [esp + 0x104], ecx
mov dword [esp + 0x108], eax
add esp, 0xf0
ret
lea edi, [esp + 0xb8]
xor eax, eax
call fcn.0046ac58
mov ecx, dword [ebp + 0x3c]
lea edx, [0x634d98]
mov dword [esp], edx
mov dword [esp + 4], ecx
lea ecx, [0x63634c]
mov dword [esp + 8], ecx
lea ebx, [0x776180]
mov dword [esp + 0xc], ebx
lea esi, [0x5b9380]
mov dword [esp + 0x10], esi
lea esi, [esp + 0xb8]
mov dword [esp + 0x14], esi
call sym.encoding_binary.Read
mov ecx, dword [esp + 0x18]
test ecx, ecx
jne 0x54d24c
mov eax, dword [esp + 0xd0]
mov ecx, dword [esp + 0xd4]
mov ebx, dword [esp + 0xbc]
mov ebp, dword [esp + 0xd8]
xor edx, edx
mov esi, 0x20
xor edi, edi
mov dword [esp + 0x34], ebx
mov ebx, eax
mov eax, ecx
mov ecx, dword [esp + 0xf4]
mov dword [esp + 0x24], esi
mov dword [esp + 0x28], edi
mov edi, dword [ebp + 0x3c]
mov esi, dword [edi + 8]
mov ecx, dword [edi + 0xc]
add eax, esi
adc edx, ecx
cmp ecx, edx
setg cl
xchg ebp, ebx
sete bl
xchg ebp, ebx
cmp eax, esi
xchg esi, ebx
setb bl
xchg esi, ebx
and esi, ebp
or ecx, esi
test cl, cl
je 0x54d04b
mov eax, dword [0x72fb08]
mov ecx, dword [0x72fb0c]
jmp 0x54d055
mov dword [edi + 0x10], eax
mov dword [edi + 0x14], edx
xor eax, eax
xor ecx, ecx
test eax, eax
jne 0x54d216
mov dword [esp + 0x30], ebx
lea eax, [0x5c2c00]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebx
call sym.runtime.makeslice
mov eax, dword [esp + 0xc]
mov dword [esp + 0xec], eax
mov ecx, dword [esp + 0xd8]
mov edx, dword [ecx + 0x3c]
lea ebx, [0x634d98]
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov edx, dword [esp + 0x30]
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], edx
call sym.io.ReadAtLeast
mov eax, dword [esp + 0x1c]
test eax, eax
jne 0x54d1dc
mov eax, dword [esp + 0xf4]
mov dword [esp], eax
mov ecx, dword [esp + 0xd8]
mov dword [esp + 4], ecx
call sym.internal_xcoff._File_.readImportIDs
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x54d1a2
mov dword [esp + 0x3c], edx
mov ebx, dword [esp + 0xd8]
mov ebp, dword [ebx + 0x3c]
mov esi, dword [ebp + 8]
mov eax, dword [ebp + 0xc]
mov ebx, dword [esp + 0x24]
add ebx, esi
mov edx, dword [esp + 0x28]
adc edx, eax
cmp eax, edx
sete al
xchg edi, ebx
setg bl
xchg edi, ebx
cmp ebx, esi
xchg esi, ebx
setb bl
xchg esi, ebx
and esi, eax
or edi, esi
xchg edi, eax
test al, al
xchg edi, eax
je 0x54d139
mov edx, dword [0x72fb08]
mov ebx, dword [0x72fb0c]
jmp 0x54d143
mov dword [ebp + 0x10], ebx
mov dword [ebp + 0x14], edx
xor edx, edx
xor ebx, ebx
test edx, edx
jne 0x54d16c
mov dword [esp + 0xe4], ecx
mov edx, dword [esp + 0xf4]
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x34]
xor eax, eax
lea esi, [0x776180]
xor edi, edi
jmp 0x54d326
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], 0
mov dword [esp + 0x100], 0
mov dword [esp + 0x104], edx
mov dword [esp + 0x108], ebx
add esp, 0xf0
ret
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], 0
mov dword [esp + 0x100], 0
mov dword [esp + 0x104], eax
mov dword [esp + 0x108], ecx
add esp, 0xf0
ret
mov ecx, dword [esp + 0x20]
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], 0
mov dword [esp + 0x100], 0
mov dword [esp + 0x104], eax
mov dword [esp + 0x108], ecx
add esp, 0xf0
ret
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], 0
mov dword [esp + 0x100], 0
mov dword [esp + 0x104], eax
mov dword [esp + 0x108], ecx
add esp, 0xf0
ret
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], 0
mov dword [esp + 0x100], 0
mov dword [esp + 0x104], ecx
mov dword [esp + 0x108], eax
add esp, 0xf0
ret
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], 0
mov dword [esp + 0x100], 0
mov dword [esp + 0x104], 0
mov dword [esp + 0x108], 0
add esp, 0xf0
ret
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], 0
mov dword [esp + 0x100], 0
mov dword [esp + 0x104], 0
mov dword [esp + 0x108], 0
add esp, 0xf0
ret
mov ebp, dword [esp + 0x40]
dec ebp
mov esi, dword [esp + 0xf4]
mov edi, dword [esp + 0xe4]
mov ecx, edi
mov esi, ebx
mov edi, edx
mov edx, dword [esp + 0xf4]
mov ebx, dword [esp + 0x3c]
test ebp, ebp
jle 0x54d5c1
mov dword [esp + 0x40], ebp
mov dword [esp + 0xe8], esi
mov dword [esp + 0x48], eax
mov dword [esp + 0x44], edi
movzx edx, word [edx]
cmp dx, 0x1df
je 0x54d42e
cmp dx, 0x1f7
je 0x54d36e
xor edx, edx
xor edx, edx
mov dword [esp + 0xe0], edx
xor edx, edx
mov dword [esp + 0x38], edx
xor edx, edx
jmp 0x54d63b
lea edi, [esp + 0x50]
xor eax, eax
call fcn.0046ac5a
mov ecx, dword [esp + 0xd8]
mov edx, dword [ecx + 0x3c]
lea ebx, [0x634d98]
mov dword [esp], ebx
mov dword [esp + 4], edx
lea edx, [0x63634c]
mov dword [esp + 8], edx
lea ebp, [0x776180]
mov dword [esp + 0xc], ebp
lea esi, [0x5b9440]
mov dword [esp + 0x10], esi
lea esi, [esp + 0x50]
mov dword [esp + 0x14], esi
call sym.encoding_binary.Read
mov ecx, dword [esp + 0x18]
test ecx, ecx
jne 0x54d54d
movzx ebx, byte [esp + 0x5e]
test bl, 0x40
jne 0x54d3e9
mov ecx, dword [esp + 0x30]
mov eax, dword [esp + 0x48]
mov edx, dword [esp + 0x44]
mov ebx, dword [esp + 0xe8]
jmp 0x54d302
mov eax, dword [esp + 0x58]
cmp eax, 4
jae 0x54d3f8
mov ecx, dword [esp + 0x30]
jmp 0x54d400
mov ecx, dword [esp + 0x30]
cmp ecx, eax
jg 0x54d40b
xor eax, eax
xor edx, edx
xor ebx, ebx
jmp 0x54d7cd
jb 0x54d820
mov edx, ecx
sub edx, eax
mov ebx, edx
neg ebx
sar ebx, 0x1f
and eax, ebx
mov ebx, dword [esp + 0xec]
add eax, ebx
xor ebp, ebp
jmp 0x54d791
lea edi, [esp + 0x68]
xor eax, eax
call fcn.0046ac5a
mov ecx, dword [esp + 0xd8]
mov edx, dword [ecx + 0x3c]
lea ebx, [0x634d98]
mov dword [esp], ebx
mov dword [esp + 4], edx
lea edx, [0x63634c]
mov dword [esp + 8], edx
lea ebp, [0x776180]
mov dword [esp + 0xc], ebp
lea esi, [0x5b9400]
mov dword [esp + 0x10], esi
lea esi, [esp + 0x68]
mov dword [esp + 0x14], esi
call sym.encoding_binary.Read
mov ecx, dword [esp + 0x18]
test ecx, ecx
jne 0x54d587
movzx ebx, byte [esp + 0x76]
test bl, 0x40
jne 0x54d4a9
mov ecx, dword [esp + 0x30]
mov eax, dword [esp + 0x48]
mov edx, dword [esp + 0x44]
mov ebx, dword [esp + 0xe8]
jmp 0x54d302
mov ebx, dword [esp + 0x68]
bswap ebx
nop
test ebx, ebx
je 0x54d4bb
xor eax, eax
jmp 0x54d748
mov eax, dword [esp + 0x6c]
bswap eax
nop
cmp eax, 4
jae 0x54d4cd
mov ecx, dword [esp + 0x30]
jmp 0x54d4d5
mov ecx, dword [esp + 0x30]
cmp ecx, eax
jg 0x54d4dd
xor eax, eax
xor edx, edx
xor ebx, ebx
jmp 0x54d531
jb 0x54d742
mov edx, ecx
sub edx, eax
mov ebx, edx
neg ebx
sar ebx, 0x1f
and ebx, eax
mov eax, dword [esp + 0xec]
add ebx, eax
xor ebp, ebp
jmp 0x54d5f4
cmp ebp, edx
ja 0x54d73b
mov dword [esp], 0
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
call sym.runtime.slicebytetostring
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, ecx
mov ebx, eax
mov ecx, dword [esp + 0x30]
mov eax, 1
test al, al
jne 0x54d60c
mov eax, dword [esp + 0x48]
mov edx, dword [esp + 0x44]
mov ebx, dword [esp + 0xe8]
jmp 0x54d302
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], 0
mov dword [esp + 0x100], 0
mov dword [esp + 0x104], ecx
mov dword [esp + 0x108], eax
add esp, 0xf0
ret
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], 0
mov dword [esp + 0x100], 0
mov dword [esp + 0x104], ecx
mov dword [esp + 0x108], eax
add esp, 0xf0
ret
mov dword [esp + 0xf8], esi
mov dword [esp + 0xfc], edi
mov dword [esp + 0x100], eax
mov dword [esp + 0x104], 0
mov dword [esp + 0x108], 0
add esp, 0xf0
ret
inc ebp
cmp ebp, edx
jge 0x54d502
movzx esi, byte [ebp + ebx]
xchg esi, eax
test al, al
xchg esi, eax
jne 0x54d5f3
jmp 0x54d500
mov ebp, dword [esp + 0x78]
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0xe4]
mov esi, dword [esp + 0xe8]
mov edi, dword [esp + 0x44]
mov dword [esp + 0xe0], ebx
mov dword [esp + 0x38], edx
mov ebx, dword [esp + 0x3c]
mov edx, ebp
mov ebp, dword [esp + 0x40]
test edx, edx
je 0x54d66f
cmp edx, ebx
jg 0x54d663
lea ebp, [edx - 1]
cmp ebx, ebp
jbe 0x54d732
lea edx, [ecx + edx*8 - 8]
mov ebp, dword [edx]
mov edx, dword [edx + 4]
mov dword [esp + 0x2c], edx
mov edx, ebp
mov ebp, dword [esp + 0x40]
jmp 0x54d679
xor edx, edx
xor edx, edx
mov dword [esp + 0x2c], edx
xor edx, edx
jmp 0x54d679
xor edx, edx
xor edx, edx
mov dword [esp + 0x2c], edx
xor edx, edx
inc edi
cmp eax, edi
jae 0x54d6c9
mov dword [esp + 0xdc], edx
mov dword [esp], esi
mov dword [esp + 4], edi
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x5cd1c0]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov esi, dword [esp + 0x14]
mov edi, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0xe4]
mov edx, dword [esp + 0xdc]
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x40]
lea ecx, [edi - 1]
shl ecx, 4
mov ebx, dword [esp + 0x38]
mov dword [esi + ecx + 4], ebx
mov ebx, dword [esp + 0x2c]
mov dword [esi + ecx + 0xc], ebx
mov ebx, dword [0x776370]
test ebx, ebx
je 0x54d717
mov dword [esp + 0x4c], eax
mov ebx, edi
call sym.runtime.gcWriteBarrier4
mov ebp, dword [esp + 0xe0]
mov dword [edi], ebp
mov eax, dword [esi + ecx]
mov dword [edi + 4], eax
mov dword [edi + 8], edx
mov eax, dword [esi + ecx + 8]
mov dword [edi + 0xc], eax
mov eax, dword [esp + 0x4c]
mov ebp, dword [esp + 0x40]
mov edi, ebx
mov ebp, dword [esp + 0xe0]
mov dword [esi + ecx], ebp
mov dword [esi + ecx + 8], edx
mov ecx, dword [esp + 0x30]
mov edx, edi
mov ebx, esi
jmp 0x54d302
mov eax, ebp
mov ecx, ebx
call sym.runtime.panicIndexU
mov ecx, ebp
call sym.runtime.panicSliceAcap
call sym.runtime.panicSliceBU
inc eax
cmp eax, 8
jge 0x54d759
movzx ebx, byte [esp + eax + 0x68]
test bl, bl
jne 0x54d747
cmp eax, 8
ja 0x54d784
mov dword [esp], 0
lea ecx, [esp + 0x68]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call sym.runtime.slicebytetostring
mov ebx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x30]
jmp 0x54d60c
mov ecx, eax
mov edx, 8
call sym.runtime.panicSliceAcap
inc ebp
cmp ebp, edx
jge 0x54d7a2
movzx esi, byte [ebp + eax]
xchg esi, eax
test al, al
xchg esi, eax
jne 0x54d790
cmp ebp, edx
ja 0x54d819
mov dword [esp], 0
mov dword [esp + 4], eax
mov dword [esp + 8], ebp
call sym.runtime.slicebytetostring
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, ecx
mov ebx, eax
mov ecx, dword [esp + 0x30]
mov eax, 1
test al, al
je 0x54d805
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0xe4]
mov ebp, dword [esp + 0x40]
mov esi, dword [esp + 0xe8]
mov edi, dword [esp + 0x44]
mov dword [esp + 0xe0], ebx
mov dword [esp + 0x38], edx
mov ebx, dword [esp + 0x3c]
mov edx, eax
mov eax, dword [esp + 0x48]
jmp 0x54d63b
mov eax, dword [esp + 0x48]
mov edx, dword [esp + 0x44]
mov ebx, dword [esp + 0xe8]
jmp 0x54d302
mov ecx, ebp
call sym.runtime.panicSliceAcap
call sym.runtime.panicSliceBU
nop
call sym.runtime.morestack_noctxt
jmp sym.internal_xcoff._File_.ImportedSymbols