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

Disassembly:
mov ecx, dword [0x631e3c]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x4f8205
sub esp, 0x2c
lea eax, [0x520700]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 0x30]
mov ecx, dword [eax + 0xc]
test ecx, ecx
jbe 0x4f81fb
mov ebx, dword [esp + 4]
mov ebp, dword [eax + 8]
movzx ebp, byte [ebp]
xchg ebp, eax
mov byte [ebx], al
xchg ebp, eax
mov edx, dword [eax + 0x10]
cmp edx, 0x11
jb 0x4f81f1
mov ebp, dword [eax + 8]
mov dword [ebx + 8], 0x10
lea esi, [edx - 1]
mov dword [ebx + 0xc], esi
mov esi, dword [0x631fb0]
inc ebp
test esi, esi
je 0x4f7ed1
call sym.runtime.gcWriteBarrier1
mov dword [edi], ebp
mov dword [esp + 0x28], ebx
mov dword [ebx + 4], ebp
xor ecx, ecx
mov edx, 0x11
jmp 0x4f7ef3
lea ebp, [eax + 1]
mov esi, dword [esp + 0x20]
lea edx, [esi + ecx]
mov eax, dword [esp + 0x30]
mov ebx, edi
mov ecx, ebp
cmp ecx, 0xa
jge 0x4f8158
mov dword [esp + 0x24], ecx
mov dword [esp + 0x20], edx
mov dword [esp], eax
mov dword [esp + 4], edx
call sym.main.parseNameList
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
test eax, eax
jne 0x4f813c
mov ebx, dword [esp + 8]
mov ebp, dword [esp + 0x10]
mov esi, dword [esp + 0xc]
mov edi, dword [esp + 0x24]
cmp edi, 4
jg 0x4f8037
cmp edi, 1
jg 0x4f7fa0
test edi, edi
jne 0x4f7f71
mov eax, edi
mov edi, dword [esp + 0x28]
mov dword [edi + 0x14], esi
mov dword [edi + 0x18], ebp
mov ebp, dword [0x631fb0]
test ebp, ebp
je 0x4f7f69
mov edx, edi
call sym.runtime.gcWriteBarrier2
mov dword [edi], ebx
mov ebp, dword [edx + 0x10]
mov dword [edi + 4], ebp
mov edi, edx
mov dword [edi + 0x10], ebx
jmp 0x4f7ee1
mov eax, edi
mov edi, dword [esp + 0x28]
mov dword [edi + 0x20], esi
mov dword [edi + 0x24], ebp
mov ebp, dword [0x631fb0]
test ebp, ebp
je 0x4f7f98
mov edx, edi
call sym.runtime.gcWriteBarrier2
mov dword [edi], ebx
mov ebp, dword [edx + 0x1c]
mov dword [edi + 4], ebp
mov edi, edx
mov dword [edi + 0x1c], ebx
jmp 0x4f7ee1
cmp edi, 2
jne 0x4f7fd4
mov eax, edi
mov edi, dword [esp + 0x28]
mov dword [edi + 0x2c], esi
mov dword [edi + 0x30], ebp
mov ebp, dword [0x631fb0]
test ebp, ebp
je 0x4f7fcc
mov edx, edi
call sym.runtime.gcWriteBarrier2
mov dword [edi], ebx
mov ebp, dword [edx + 0x28]
mov dword [edi + 4], ebp
mov edi, edx
mov dword [edi + 0x28], ebx
jmp 0x4f7ee1
cmp edi, 3
jne 0x4f8008
mov eax, edi
mov edi, dword [esp + 0x28]
mov dword [edi + 0x38], esi
mov dword [edi + 0x3c], ebp
mov ebp, dword [0x631fb0]
test ebp, ebp
je 0x4f8000
mov edx, edi
call sym.runtime.gcWriteBarrier2
mov dword [edi], ebx
mov ebp, dword [edx + 0x34]
mov dword [edi + 4], ebp
mov edi, edx
mov dword [edi + 0x34], ebx
jmp 0x4f7ee1
mov eax, edi
mov edi, dword [esp + 0x28]
mov dword [edi + 0x44], esi
mov dword [edi + 0x48], ebp
mov ebp, dword [0x631fb0]
test ebp, ebp
je 0x4f802f
mov edx, edi
call sym.runtime.gcWriteBarrier2
mov dword [edi], ebx
mov ebp, dword [edx + 0x40]
mov dword [edi + 4], ebp
mov edi, edx
mov dword [edi + 0x40], ebx
jmp 0x4f7ee1
cmp edi, 6
jg 0x4f809f
cmp edi, 5
jne 0x4f8070
mov eax, edi
mov edi, dword [esp + 0x28]
mov dword [edi + 0x50], esi
mov dword [edi + 0x54], ebp
mov ebp, dword [0x631fb0]
test ebp, ebp
je 0x4f8068
mov edx, edi
call sym.runtime.gcWriteBarrier2
mov dword [edi], ebx
mov ebp, dword [edx + 0x4c]
mov dword [edi + 4], ebp
mov edi, edx
mov dword [edi + 0x4c], ebx
jmp 0x4f7ee1
mov eax, edi
mov edi, dword [esp + 0x28]
mov dword [edi + 0x5c], esi
mov dword [edi + 0x60], ebp
mov ebp, dword [0x631fb0]
test ebp, ebp
je 0x4f8097
mov edx, edi
call sym.runtime.gcWriteBarrier2
mov dword [edi], ebx
mov ebp, dword [edx + 0x58]
mov dword [edi + 4], ebp
mov edi, edx
mov dword [edi + 0x58], ebx
jmp 0x4f7ee1
cmp edi, 7
jne 0x4f80d3
mov eax, edi
mov edi, dword [esp + 0x28]
mov dword [edi + 0x68], esi
mov dword [edi + 0x6c], ebp
mov ebp, dword [0x631fb0]
test ebp, ebp
je 0x4f80cb
mov edx, edi
call sym.runtime.gcWriteBarrier2
mov dword [edi], ebx
mov ebp, dword [edx + 0x64]
mov dword [edi + 4], ebp
mov edi, edx
mov dword [edi + 0x64], ebx
jmp 0x4f7ee1
cmp edi, 8
jne 0x4f8107
mov eax, edi
mov edi, dword [esp + 0x28]
mov dword [edi + 0x74], esi
mov dword [edi + 0x78], ebp
mov ebp, dword [0x631fb0]
test ebp, ebp
je 0x4f80ff
mov edx, edi
call sym.runtime.gcWriteBarrier2
mov dword [edi], ebx
mov ebp, dword [edx + 0x70]
mov dword [edi + 4], ebp
mov edi, edx
mov dword [edi + 0x70], ebx
jmp 0x4f7ee1
mov eax, edi
mov edi, dword [esp + 0x28]
mov dword [edi + 0x80], esi
mov dword [edi + 0x84], ebp
mov ebp, dword [0x631fb0]
test ebp, ebp
je 0x4f8134
mov edx, edi
call sym.runtime.gcWriteBarrier2
mov dword [edi], ebx
mov ebp, dword [edx + 0x7c]
mov dword [edi + 4], ebp
mov edi, edx
mov dword [edi + 0x7c], ebx
jmp 0x4f7ee1
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], ecx
add esp, 0x2c
ret
mov ebp, dword [eax + 0x10]
lea ecx, [edx + 4]
cmp ebp, ecx
jb 0x4f81ea
cmp edx, ecx
ja 0x4f81e3
mov esi, dword [eax + 8]
sub ebp, edx
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, edx
lea edi, [edx + 8]
mov ebp, dword [ebp + esi]
bswap ebp
test ebp, ebp
xchg ebp, ebx
seta bl
xchg ebp, ebx
xchg ebp, eax
mov byte [ebx + 0x88], al
xchg ebp, eax
mov ebp, dword [eax + 0x10]
cmp ebp, edi
jb 0x4f81da
cmp edi, ecx
jb 0x4f81d1
mov eax, dword [eax + 8]
sub ebp, edx
lea edx, [ebp - 4]
neg edx
sar edx, 0x1f
and ecx, edx
mov eax, dword [ecx + eax]
bswap eax
mov dword [ebx + 0x8c], eax
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], 0
mov dword [esp + 0x3c], 0
add esp, 0x2c
ret
mov eax, ecx
mov ecx, edi
call sym.runtime.panicSliceBU
mov ecx, edi
mov edx, ebp
call sym.runtime.panicSliceAcapU
mov eax, edx
call sym.runtime.panicSliceBU
mov edx, ebp
call sym.runtime.panicSliceAcapU
mov ecx, 0x11
call sym.runtime.panicSliceAcapU
xor eax, eax
xor ecx, ecx
call sym.runtime.panicIndexU
nop
call sym.runtime.morestack_noctxt
jmp sym.main.parseKexInit