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

Disassembly:
mov ecx, dword [0x6dded4]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x10]
cmp eax, dword [ecx + 8]
jbe 0x533045
sub esp, 0x90
mov eax, dword [edx + 4]
mov dword [esp + 0x5c], eax
movzx ecx, byte [edx + 8]
mov ebx, dword [eax + 0x20]
mov ebp, dword [eax + 0x24]
mov esi, dword [edx + 0x24]
mov dword [esp + 0x40], esi
mov edi, dword [edx + 0x10]
mov esi, dword [edx + 0x20]
mov dword [esp + 0x3c], esi
mov esi, dword [edx + 0x18]
mov dword [esp + 0x54], esi
mov eax, dword [edx + 0x1c]
mov dword [esp + 0x60], eax
mov eax, dword [edx + 0x14]
mov esi, dword [esp + 0x94]
sub esi, ebx
mov dword [esp + 0x38], esi
mov ebx, dword [esp + 0x98]
sbb ebx, ebp
mov dword [esp + 0x48], ebx
test cl, cl
je 0x532bf9
mov dword [esp + 0x64], edi
mov ecx, dword [edx + 0xc]
mov dword [esp + 0x68], ecx
mov edx, dword [esp + 0xa8]
cmp dword [ecx + 4], edx
je 0x532991
mov ebp, 1
jmp 0x5329d3
mov dword [esp + 0x6c], eax
mov eax, dword [ecx]
mov ebx, dword [esp + 0xa4]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call sym.runtime.memequal
movzx eax, byte [esp + 0xc]
xor eax, 1
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0xa8]
mov ebx, dword [esp + 0x48]
mov esi, dword [esp + 0x38]
mov edi, dword [esp + 0x64]
mov ebp, eax
mov eax, dword [esp + 0x6c]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x5329e2
mov ebp, dword [esp + 0xac]
jmp 0x5329f1
mov ebp, dword [esp + 0xac]
cmp dword [edi], ebp
je 0x532b78
mov eax, dword [eax]
mov dword [esp], eax
mov eax, dword [esp + 0xa4]
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebp
call sym.cmd_internal_objfile._FileCache_.Line
mov eax, dword [esp + 0x1c]
test eax, eax
jne 0x532b35
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x58], ecx
mov edx, dword [esp + 0x14]
mov dword [esp + 0x28], edx
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x2c], ebx
lea edi, [esp + 0x78]
xor eax, eax
call fcn.00460baa
lea ecx, [0x54eca0]
mov dword [esp], ecx
call sym.runtime.newobject
mov ecx, dword [esp + 4]
mov byte [ecx], 0xff
mov dword [esp], ecx
mov dword [esp + 4], 1
mov dword [esp + 8], 1
call sym.runtime.convTslice
mov ecx, dword [esp + 0xc]
lea edx, [0x54c120]
mov dword [esp + 0x78], edx
mov dword [esp + 0x7c], ecx
mov ecx, dword [esp + 0x58]
mov dword [esp], ecx
mov ecx, dword [esp + 0x28]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x2c]
mov dword [esp + 8], ecx
call sym.runtime.convTslice
mov ecx, dword [esp + 0xc]
lea edx, [0x54c120]
mov dword [esp + 0x80], edx
mov dword [esp + 0x84], ecx
lea ecx, [0x54eca0]
mov dword [esp], ecx
call sym.runtime.newobject
mov ecx, dword [esp + 4]
mov byte [ecx], 0xff
mov dword [esp], ecx
mov dword [esp + 4], 1
mov dword [esp + 8], 1
call sym.runtime.convTslice
mov ecx, dword [esp + 0xc]
lea edx, [0x54c120]
mov dword [esp + 0x88], edx
mov dword [esp + 0x8c], ecx
lea ecx, [0x5b780c]
mov dword [esp], ecx
mov ebx, dword [esp + 0x54]
mov dword [esp + 4], ebx
lea ebp, [0x576693]
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 7
lea ebp, [esp + 0x78]
mov dword [esp + 0x10], ebp
mov dword [esp + 0x14], 3
mov dword [esp + 0x18], 3
call sym.fmt.Fprintf
mov eax, dword [esp + 0xa8]
mov ecx, dword [esp + 0x68]
mov dword [ecx + 4], eax
mov eax, dword [0x6ddfe0]
test eax, eax
jne 0x532b56
mov eax, dword [esp + 0xa4]
jmp 0x532b69
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0xa4]
mov dword [edi], eax
mov edx, dword [ecx]
mov dword [edi + 4], edx
mov dword [ecx], eax
mov eax, dword [esp + 0xac]
mov ecx, dword [esp + 0x64]
mov dword [ecx], eax
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov eax, dword [esp + 0x98]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x94]
mov dword [esp], eax
call sym.runtime.convT64
mov eax, dword [esp + 8]
lea ecx, [0x550ec0]
mov dword [esp + 0x70], ecx
mov dword [esp + 0x74], eax
lea eax, [0x5b780c]
mov dword [esp], eax
mov ecx, dword [esp + 0x54]
mov dword [esp + 4], ecx
lea edx, [0x5744ea]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 6
lea edx, [esp + 0x70]
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], 1
mov dword [esp + 0x18], 1
call sym.fmt.Fprintf
jmp 0x532ce7
mov eax, dword [esp + 0xa4]
mov dword [esp], eax
mov eax, dword [esp + 0xa8]
mov dword [esp + 4], eax
call sym.cmd_internal_objfile.base
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x44], ecx
lea edi, [esp + 0x78]
mov edx, eax
xor eax, eax
call fcn.00460baa
mov dword [esp], edx
mov eax, dword [esp + 0x44]
mov dword [esp + 4], eax
call sym.runtime.convTstring
mov eax, dword [esp + 8]
lea ecx, [0x550ac0]
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0xac]
mov dword [esp], eax
call sym.runtime.convT32
mov eax, dword [esp + 4]
lea ecx, [0x550c40]
mov dword [esp + 0x80], ecx
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0x98]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x94]
mov dword [esp], eax
call sym.runtime.convT64
mov eax, dword [esp + 8]
lea ecx, [0x550ec0]
mov dword [esp + 0x88], ecx
mov dword [esp + 0x8c], eax
lea eax, [0x5b780c]
mov dword [esp], eax
mov ecx, dword [esp + 0x54]
mov dword [esp + 4], ecx
lea edx, [0x580102]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0xc
lea edx, [esp + 0x78]
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], 3
mov dword [esp + 0x18], 3
call sym.fmt.Fprintf
mov ecx, dword [esp + 0x9c]
test ecx, 3
jne 0x532d51
mov ebx, dword [esp + 0x5c]
mov ebp, dword [ebx + 0x34]
mov edi, dword [ebx + 0x30]
cmp ebp, 3
jne 0x532d12
cmp word [edi], 0x3833
jne 0x532d12
cmp byte [edi + 2], 0x36
je 0x532d51
cmp ebp, 5
jne 0x532d25
cmp dword [edi], 0x36646d61
jne 0x532d25
cmp byte [edi + 4], 0x34
je 0x532d51
mov edx, dword [esp + 0xa0]
mov ebp, dword [esp + 0x3c]
mov esi, dword [esp + 0x48]
mov edi, dword [esp + 0x60]
mov eax, dword [esp + 0x40]
mov dword [esp + 0x4c], eax
xor eax, eax
mov dword [esp + 0x30], eax
xor eax, eax
mov dword [esp + 0x34], eax
jmp 0x532f94
mov eax, dword [esp + 0x38]
add ecx, eax
mov esi, dword [esp + 0xa0]
mov ebx, dword [esp + 0x48]
adc esi, ebx
test esi, esi
jne 0x532ea1
mov edx, dword [esp + 0x40]
cmp ecx, edx
ja 0x532e9c
test ebx, ebx
jne 0x532e95
cmp ecx, eax
jb 0x532e90
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
sub edx, eax
sub ecx, eax
mov ebx, edx
neg edx
sar edx, 0x1f
and eax, edx
mov edx, dword [esp + 0x60]
add eax, edx
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
call sym.runtime.convTslice
mov eax, dword [esp + 0xc]
lea ecx, [0x54c120]
mov dword [esp + 0x70], ecx
mov dword [esp + 0x74], eax
lea eax, [0x5b780c]
mov dword [esp], eax
mov ecx, dword [esp + 0x54]
mov dword [esp + 4], ecx
lea edx, [0x5722c1]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
lea edx, [esp + 0x70]
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], 1
mov dword [esp + 0x18], 1
call sym.fmt.Fprintf
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov eax, dword [esp + 0xb0]
mov dword [esp], eax
mov eax, dword [esp + 0xb4]
mov dword [esp + 4], eax
call sym.runtime.convTstring
mov eax, dword [esp + 8]
lea ecx, [0x550ac0]
mov dword [esp + 0x70], ecx
mov dword [esp + 0x74], eax
lea eax, [0x5b780c]
mov dword [esp], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 4], eax
lea eax, [0x5734b7]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 5
lea eax, [esp + 0x70]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], 1
mov dword [esp + 0x18], 1
call sym.fmt.Fprintf
add esp, 0x90
ret
call sym.runtime.panicSliceBU
mov esi, ebx
call sym.runtime.panicExtendSliceBU
call sym.runtime.panicSliceAcapU
mov edx, dword [esp + 0x40]
call sym.runtime.panicExtendSliceAcapU
mov eax, dword [esp + 0x5c]
mov ecx, dword [eax + 0x3c]
mov edx, dword [eax + 0x40]
mov ecx, dword [ecx + 0x24]
mov dword [esp], edx
mov edx, dword [esp + 0x40]
sub edx, ebx
mov dword [esp + 0x44], edx
sub ebp, ebx
neg edx
sar edx, 0x1f
and ebx, edx
mov edx, dword [esp + 0x60]
add ebx, edx
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov ebx, dword [esp + 0x44]
mov dword [esp + 0xc], ebx
call ecx
mov eax, dword [esp + 0x10]
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov dword [esp], eax
call sym.runtime.convT32
mov eax, dword [esp + 4]
lea ecx, [0x550dc0]
mov dword [esp + 0x70], ecx
mov dword [esp + 0x74], eax
lea eax, [0x5b780c]
mov dword [esp], eax
mov edx, dword [esp + 0x54]
mov dword [esp + 4], edx
lea ebx, [0x5729f8]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 4
lea ebp, [esp + 0x70]
mov dword [esp + 0x10], ebp
mov dword [esp + 0x14], 1
mov dword [esp + 0x18], 1
call sym.fmt.Fprintf
mov eax, dword [esp + 0x30]
add eax, 4
mov ecx, dword [esp + 0x34]
adc ecx, 0
mov edx, dword [esp + 0xa0]
mov ebx, dword [esp + 0x9c]
mov ebp, dword [esp + 0x5c]
mov esi, dword [esp + 0x3c]
mov edi, dword [esp + 0x48]
mov ebx, ebp
mov ebp, esi
mov esi, edi
mov edi, dword [esp + 0x60]
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], ecx
mov ecx, dword [esp + 0x9c]
mov edi, dword [esp + 0x34]
cmp edx, edi
sete dl
seta al
mov ebx, dword [esp + 0x30]
cmp ecx, ebx
seta cl
and edx, ecx
or edx, eax
test dl, dl
je 0x532e0d
test edi, edi
sete dl
seta al
test ebx, ebx
seta cl
and edx, ecx
or edx, eax
test dl, dl
je 0x53301a
lea eax, [0x5b780c]
mov dword [esp], eax
mov ecx, dword [esp + 0x54]
mov dword [esp + 4], ecx
lea edx, [0x5b7224]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 0
call sym.fmt.Fprintf
mov ebx, dword [esp + 0x30]
mov ebp, dword [esp + 0x3c]
mov esi, dword [esp + 0x48]
mov edi, dword [esp + 0x34]
mov eax, dword [esp + 0x38]
add ebx, eax
mov ecx, esi
adc ecx, edi
test ecx, ecx
jne 0x533039
cmp ebx, ebp
jbe 0x532eaa
mov eax, ebx
mov ecx, ebp
call sym.runtime.panicSliceBU
mov esi, ecx
mov eax, ebx
mov ecx, ebp
call sym.runtime.panicExtendSliceBU
nop
call sym.runtime.morestack
jmp sym.cmd_internal_objfile._Disasm_.Print.func1