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

Disassembly:
mov ecx, dword [0x7b1178]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 4]
cmp eax, dword [ecx + 8]
jbe 0x54d4fe
sub esp, 0x84
mov eax, dword [esp + 0x88]
mov ecx, dword [eax + 0x3c]
test ecx, ecx
jne 0x54cd27
nop
mov ecx, dword [eax + 0x20]
mov edx, dword [eax + 0x1c]
xor ebx, ebx
jmp 0x54cd37
mov byte [esp + 0x98], 1
add esp, 0x84
ret
inc ebx
cmp ebx, ecx
jge 0x54cd49
mov ebp, dword [edx + ebx*4]
cmp dword [ebp + 8], 0x6ffffffe
jne 0x54cd36
jmp 0x54cd4b
xor ebp, ebp
test ebp, ebp
je 0x54cd7e
mov dword [esp], ebp
call sym.debug_elf._Section_.Data
mov eax, dword [esp + 4]
mov dword [esp + 0x7c], eax
mov edx, dword [esp + 0xc]
mov dword [esp + 0x40], edx
mov ecx, dword [esp + 8]
mov dword [esp + 0x3c], ecx
mov ebx, dword [esp + 0x88]
xor ebp, ebp
xor esi, esi
xor edi, edi
jmp 0x54cdab
mov byte [esp + 0x98], 0
add esp, 0x84
ret
lea ebp, [ebx + eax]
mov ebx, dword [esp + 0x88]
mov eax, dword [esp + 0x7c]
mov edi, dword [esp + 0x40]
mov esi, ecx
mov edi, edx
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x40]
mov dword [esp + 0x28], esi
lea esi, [ebp + 0x10]
cmp ecx, esi
jl 0x54d09f
lea ecx, [ebp + 2]
cmp edx, ecx
jb 0x54d4f8
cmp ebp, ecx
ja 0x54d4f1
mov dword [esp + 0x6c], esi
mov dword [esp + 0x68], ecx
mov dword [esp + 0x74], edi
mov dword [esp + 0x34], ebp
mov ecx, dword [ebx + 8]
mov esi, dword [ebx + 0xc]
mov ecx, dword [ecx + 0x1c]
mov dword [esp], esi
sub edx, ebp
mov dword [esp + 0x64], edx
mov edi, edx
neg edx
sar edx, 0x1f
and edx, ebp
add edx, eax
mov dword [esp + 4], edx
mov dword [esp + 8], 2
mov dword [esp + 0xc], edi
call ecx
cmp word [esp + 0x10], 1
jne 0x54d08e
mov ebx, dword [esp + 0x34]
lea ecx, [ebx + 4]
mov edx, dword [esp + 0x40]
cmp edx, ecx
jb 0x54d4ec
mov eax, dword [esp + 0x68]
cmp ecx, eax
jb 0x54d4e7
mov dword [esp + 0x68], ecx
mov ecx, dword [esp + 0x88]
mov edx, dword [ecx + 8]
mov ebx, dword [ecx + 0xc]
mov edx, dword [edx + 0x1c]
mov dword [esp], ebx
mov ebx, dword [esp + 0x64]
lea ebp, [ebx - 2]
mov esi, ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and eax, ebp
mov ebp, dword [esp + 0x7c]
add eax, ebp
mov dword [esp + 4], eax
mov dword [esp + 8], 2
mov dword [esp + 0xc], esi
call edx
mov eax, dword [esp + 0x34]
lea ecx, [eax + 8]
movzx edx, word [esp + 0x10]
mov ebx, dword [esp + 0x40]
cmp ebx, ecx
jb 0x54d4e0
mov ebp, dword [esp + 0x68]
cmp ecx, ebp
jb 0x54d4d9
mov dword [esp + 0x68], ecx
mov dword [esp + 0x60], edx
mov eax, dword [esp + 0x88]
mov ecx, dword [eax + 8]
mov edx, dword [eax + 0xc]
mov ecx, dword [ecx + 0x20]
mov dword [esp], edx
mov edx, dword [esp + 0x64]
lea ebx, [edx - 4]
mov esi, ebx
neg ebx
sar ebx, 0x1f
and ebp, ebx
mov ebx, dword [esp + 0x7c]
add ebp, ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], 4
mov dword [esp + 0xc], esi
call ecx
mov eax, dword [esp + 0x34]
lea ecx, [eax + 0xc]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x40]
cmp ebx, ecx
jb 0x54d4d2
mov ebp, dword [esp + 0x68]
cmp ecx, ebp
jb 0x54d4cb
mov dword [esp + 0x38], edx
mov dword [esp + 0x68], ecx
mov eax, dword [esp + 0x88]
mov ecx, dword [eax + 8]
mov edx, dword [eax + 0xc]
mov ecx, dword [ecx + 0x20]
mov dword [esp], edx
mov edx, dword [esp + 0x64]
lea ebx, [edx - 8]
mov esi, ebx
neg ebx
sar ebx, 0x1f
and ebp, ebx
mov ebx, dword [esp + 0x7c]
add ebp, ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], 4
mov dword [esp + 0xc], esi
call ecx
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x40]
mov ecx, dword [esp + 0x6c]
cmp edx, ecx
jb 0x54d4c6
mov ebx, dword [esp + 0x68]
cmp ebx, ecx
ja 0x54d4bf
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x88]
mov ecx, dword [eax + 8]
mov edx, dword [eax + 0xc]
mov ecx, dword [ecx + 0x20]
mov dword [esp], edx
mov edx, dword [esp + 0x64]
add edx, 0xfffffff4
mov ebp, edx
neg edx
sar edx, 0x1f
and ebx, edx
mov edx, dword [esp + 0x7c]
add ebx, edx
mov dword [esp + 4], ebx
mov dword [esp + 8], 4
mov dword [esp + 0xc], ebp
call ecx
mov eax, dword [esp + 0x10]
mov dword [esp + 0x20], eax
mov ecx, dword [esp + 0x38]
test ecx, ecx
jge 0x54cfbf
mov ebx, dword [esp + 0x90]
jmp 0x54cfca
mov ebx, dword [esp + 0x90]
cmp ebx, ecx
jg 0x54cfd7
mov ebp, dword [esp + 0x8c]
xor ecx, ecx
xor edx, edx
jmp 0x54d031
mov ebp, dword [esp + 0x8c]
mov edx, ecx
jmp 0x54d149
mov dword [esp], 0
mov eax, dword [esp + 0x94]
sub eax, edx
neg eax
sar eax, 0x1f
and eax, edx
add eax, ebp
mov dword [esp + 4], eax
sub ecx, edx
mov dword [esp + 8], ecx
call sym.runtime.slicebytetostring
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov ebx, dword [esp + 0x90]
mov ebp, dword [esp + 0x8c]
mov edx, ecx
mov ecx, eax
mov eax, dword [esp + 0x20]
jmp 0x54d031
xor ecx, ecx
xor edx, edx
mov dword [esp + 0x18], edx
mov dword [esp + 0x70], ecx
mov esi, ebp
mov ebp, dword [esp + 0x48]
mov edi, ebx
mov ebx, dword [esp + 0x34]
add ebp, ebx
mov dword [esp + 0x4c], eax
xor eax, eax
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x4c]
jmp 0x54d196
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x80]
jmp 0x54d081
mov esi, dword [esp + 0x3c]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x80]
test eax, eax
jne 0x54cd8d
jmp 0x54d44c
mov ebx, dword [esp + 0x88]
mov eax, dword [esp + 0x28]
mov edi, dword [esp + 0x74]
jmp 0x54d0a3
mov eax, dword [esp + 0x28]
nop
mov ecx, dword [ebx + 0x1c]
mov edx, dword [ebx + 0x20]
xor ebp, ebp
jmp 0x54d0af
inc ebp
cmp ebp, edx
jge 0x54d0c1
mov esi, dword [ecx + ebp*4]
cmp dword [esi + 8], 0x6fffffff
jne 0x54d0ae
jmp 0x54d0c3
xor esi, esi
test esi, esi
je 0x54d139
mov dword [esp + 0x28], eax
mov dword [esp + 0x74], edi
mov dword [esp], esi
call sym.debug_elf._Section_.Data
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x28]
mov ebp, dword [esp + 0x88]
mov dword [ebp + 0x40], ebx
mov dword [ebp + 0x44], ebx
mov ebx, dword [0x7b12d0]
test ebx, ebx
jne 0x54d104
mov ebx, dword [esp + 0x74]
jmp 0x54d11e
call sym.runtime.gcWriteBarrier4
mov ebx, dword [esp + 0x74]
mov dword [edi], ebx
mov esi, dword [ebp + 0x3c]
mov dword [edi + 4], esi
mov dword [edi + 8], eax
mov esi, dword [ebp + 0x48]
mov dword [edi + 0xc], esi
mov dword [ebp + 0x3c], ebx
mov dword [ebp + 0x4c], ecx
mov dword [ebp + 0x50], edx
mov dword [ebp + 0x48], eax
mov byte [esp + 0x98], 1
add esp, 0x84
ret
mov byte [esp + 0x98], 0
add esp, 0x84
ret
inc ecx
cmp ebx, ecx
jle 0x54d02d
movzx esi, byte [ecx + ebp]
xchg esi, eax
test al, al
xchg esi, eax
jne 0x54d148
jmp 0x54cfe5
mov ecx, dword [esp + 0x44]
inc ecx
mov edi, dword [esp + 0x30]
add eax, edi
mov edi, dword [esp + 0x88]
mov ebx, dword [esp + 0x34]
mov edi, dword [esp + 0x90]
mov dword [esp + 0x44], ecx
mov ebp, eax
mov dword [esp + 0x28], esi
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x70]
mov esi, dword [esp + 0x8c]
mov esi, dword [esp + 0x44]
mov edi, dword [esp + 0x60]
cmp esi, edi
jge 0x54d072
lea edi, [ebp + 0x10]
mov esi, dword [esp + 0x3c]
cmp esi, edi
jl 0x54d065
lea ebx, [ebp + 8]
mov esi, dword [esp + 0x40]
cmp esi, ebx
jb 0x54d4b6
lea eax, [ebp + 6]
cmp ebx, eax
jb 0x54d4af
mov dword [esp + 0x6c], edi
mov dword [esp + 0x68], ebx
mov dword [esp + 0x30], ebp
mov ecx, dword [esp + 0x88]
mov edx, dword [ecx + 8]
mov ebx, dword [ecx + 0xc]
mov edx, dword [edx + 0x1c]
mov dword [esp], ebx
sub esi, ebp
mov dword [esp + 0x64], esi
lea edi, [esi - 6]
mov dword [esp + 0x5c], edi
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and eax, edi
mov edi, dword [esp + 0x7c]
add eax, edi
mov dword [esp + 4], eax
mov dword [esp + 8], 2
mov eax, dword [esp + 0x5c]
mov dword [esp + 0xc], eax
call edx
mov eax, dword [esp + 0x30]
lea ecx, [eax + 0xc]
movzx edx, word [esp + 0x10]
mov ebx, dword [esp + 0x40]
cmp ebx, ecx
jb 0x54d4a8
mov ebp, dword [esp + 0x68]
cmp ecx, ebp
jb 0x54d4a1
mov dword [esp + 0x68], ecx
mov dword [esp + 0x5c], edx
mov eax, dword [esp + 0x88]
mov ecx, dword [eax + 8]
mov edx, dword [eax + 0xc]
mov ecx, dword [ecx + 0x20]
mov dword [esp], edx
mov edx, dword [esp + 0x64]
lea ebx, [edx - 8]
mov esi, ebx
neg ebx
sar ebx, 0x1f
and ebp, ebx
mov ebx, dword [esp + 0x7c]
add ebp, ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], 4
mov dword [esp + 0xc], esi
call ecx
mov edx, dword [esp + 0x40]
mov ecx, dword [esp + 0x6c]
cmp edx, ecx
jb 0x54d49c
mov eax, dword [esp + 0x68]
cmp eax, ecx
ja 0x54d497
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x58], ecx
mov edx, dword [esp + 0x88]
mov ebx, dword [edx + 8]
mov ebp, dword [edx + 0xc]
mov ebx, dword [ebx + 0x20]
mov dword [esp], ebp
mov ebp, dword [esp + 0x64]
add ebp, 0xfffffff4
mov esi, ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and eax, ebp
mov ebp, dword [esp + 0x7c]
add eax, ebp
mov dword [esp + 4], eax
mov dword [esp + 8], 4
mov dword [esp + 0xc], esi
call ebx
mov eax, dword [esp + 0x10]
mov dword [esp + 0x1c], eax
mov ecx, dword [esp + 0x58]
test ecx, ecx
jge 0x54d305
mov ebx, dword [esp + 0x90]
jmp 0x54d310
mov ebx, dword [esp + 0x90]
cmp ebx, ecx
jg 0x54d31d
mov ebp, dword [esp + 0x8c]
xor ecx, ecx
xor edx, edx
jmp 0x54d377
mov ebp, dword [esp + 0x8c]
mov edx, ecx
jmp 0x54d45d
mov dword [esp], 0
mov eax, dword [esp + 0x94]
sub eax, edx
neg eax
sar eax, 0x1f
and eax, edx
add eax, ebp
mov dword [esp + 4], eax
sub ecx, edx
mov dword [esp + 8], ecx
call sym.runtime.slicebytetostring
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov ebx, dword [esp + 0x90]
mov ebp, dword [esp + 0x8c]
mov edx, ecx
mov ecx, eax
mov eax, dword [esp + 0x1c]
jmp 0x54d377
xor ecx, ecx
xor edx, edx
mov esi, dword [esp + 0x28]
mov edi, dword [esp + 0x5c]
cmp esi, edi
jg 0x54d3e2
mov dword [esp + 0x2c], edx
mov dword [esp + 0x78], ecx
lea eax, [0x5f9440]
mov dword [esp], eax
lea ecx, [edi + 1]
shl ecx, 1
mov dword [esp + 0x24], ecx
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
mov edx, dword [esp + 0x80]
mov dword [esp + 0xc], edx
call sym.runtime.makeslicecopy
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x90]
mov ebp, dword [esp + 0x8c]
mov edi, dword [esp + 0x5c]
mov esi, dword [esp + 0x24]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x1c]
cmp esi, edi
jbe 0x54d48e
shl edi, 4
mov ebp, dword [esp + 0x18]
mov ebx, dword [esp + 0x80]
mov dword [ebx + edi + 4], ebp
mov dword [ebx + edi + 0xc], edx
mov edx, dword [0x7b12d0]
test edx, edx
je 0x54d435
mov dword [esp + 0x54], esi
mov edx, edi
call sym.runtime.gcWriteBarrier4
mov ebp, dword [esp + 0x70]
mov dword [edi], ebp
mov esi, dword [ebx + edx]
mov dword [edi + 4], esi
mov dword [edi + 8], ecx
mov esi, dword [ebx + edx + 8]
mov dword [edi + 0xc], esi
mov ebp, dword [esp + 0x18]
mov esi, dword [esp + 0x54]
mov edi, edx
mov edx, ebp
mov ebp, dword [esp + 0x70]
mov dword [ebx + edi], ebp
mov dword [ebx + edi + 8], ecx
test eax, eax
jne 0x54d160
jmp 0x54d474
mov ebx, dword [esp + 0x88]
mov eax, ecx
mov edi, edx
jmp 0x54d0a3
inc ecx
cmp ebx, ecx
jle 0x54d373
movzx esi, byte [ecx + ebp]
xchg esi, eax
test al, al
xchg esi, eax
jne 0x54d45c
jmp 0x54d32b
mov eax, dword [esp + 0x20]
mov ebx, dword [esp + 0x34]
mov ecx, esi
mov edx, dword [esp + 0x80]
mov esi, dword [esp + 0x3c]
jmp 0x54d081
mov eax, edi
mov ecx, esi
call sym.runtime.panicIndex
call sym.runtime.panicSliceB
call sym.runtime.panicSliceAcap
mov eax, ebp
call sym.runtime.panicSliceB
mov edx, ebx
call sym.runtime.panicSliceAcap
mov ecx, ebx
call sym.runtime.panicSliceB
mov ecx, ebx
mov edx, esi
call sym.runtime.panicSliceAcap
mov eax, ebx
call sym.runtime.panicSliceB
call sym.runtime.panicSliceAcap
mov eax, ebp
call sym.runtime.panicSliceB
mov edx, ebx
call sym.runtime.panicSliceAcap
mov eax, ebp
call sym.runtime.panicSliceB
mov edx, ebx
call sym.runtime.panicSliceAcap
call sym.runtime.panicSliceB
call sym.runtime.panicSliceAcap
mov eax, ebp
call sym.runtime.panicSliceB
call sym.runtime.panicSliceAcap
nop
call sym.runtime.morestack_noctxt
jmp sym.debug_elf._File_.gnuVersionInit