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

Disassembly:
mov ecx, dword [0x7a1414]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x90]
cmp eax, dword [ecx + 8]
jbe 0x55d092
sub esp, 0x110
nop
lea eax, [0x5dab60]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x74], eax
mov ecx, dword [esp + 0x114]
movzx edx, word [ecx + 0x74]
mov word [eax + 4], dx
movsx edx, word [ecx + 0x34]
mov dword [eax + 8], edx
movsx edx, word [ecx + 0x76]
mov dword [eax + 0xc], edx
movsx edx, word [ecx + 8]
mov dword [eax + 0x10], edx
mov edx, dword [ecx + 0x14]
mov ebx, dword [ecx + 0x18]
mov dword [eax + 0x18], edx
mov dword [eax + 0x1c], ebx
cmp dword [ecx + 0x2c], 1
jne 0x55bce7
mov edx, dword [ecx + 0x28]
movsx edx, word [edx]
mov dword [eax + 0x14], edx
lea eax, [0x5c8720]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [0x7a14d8]
mov ecx, dword [esp + 4]
test eax, eax
jne 0x55bd09
mov eax, dword [esp + 0x74]
jmp 0x55bd14
call sym.runtime.gcWriteBarrier1
mov eax, dword [esp + 0x74]
mov dword [edi], eax
mov dword [ecx], eax
mov edx, dword [esp + 0x114]
movzx ebx, word [edx + 0x76]
test bx, bx
jne 0x55cfe7
mov dword [esp + 0x10c], ecx
movzx ebx, byte [edx + 0xe]
cmp bl, 4
jne 0x55c359
movzx ebp, byte [edx + 0x3a]
xchg ebp, eax
cmp al, 7
xchg ebp, eax
jne 0x55c29a
cmp word [edx + 0x74], 0x40f3
je 0x55be04
mov eax, dword [edx]
mov dword [esp + 0xa0], eax
lea ecx, [0x5c6b80]
mov dword [esp], ecx
call sym.runtime.newobject
mov eax, dword [esp + 4]
lea ecx, [0x5de540]
mov dword [eax], ecx
mov ecx, dword [0x7a14d8]
test ecx, ecx
jne 0x55bd8f
mov ecx, dword [esp + 0x114]
jmp 0x55bd9d
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x114]
mov dword [edi], ecx
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0xa0]
inc dword [ecx + 0x90]
mov edx, dword [ecx + 0x80]
mov ecx, dword [edx]
lea ebx, [0x5f7722]
mov dword [esp], ebx
mov dword [esp + 4], 0x1d
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call ecx
mov dword [esp + 0x118], 0
mov dword [esp + 0x11c], 0
mov dword [esp + 0x120], 0
add esp, 0x110
ret
mov ecx, dword [eax + 0x18]
mov edx, dword [eax + 0x1c]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], 0x20
call sym.cmd_internal_obj_riscv.immIFits
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x55be31
mov edx, dword [esp + 0x74]
xor eax, eax
jmp 0x55bf6b
mov eax, dword [esp + 0x74]
mov edx, dword [eax + 0x1c]
mov dword [esp + 0x54], edx
bsf ebx, edx
jne 0x55be46
mov ebx, 0x20
mov ebp, dword [eax + 0x18]
bsf esi, ebp
jne 0x55be53
mov esi, 0x20
cmp ebp, 1
sbb edi, edi
xor edi, 0xffffffff
xchg edi, ebx
not ebx
xchg edi, ebx
and edi, ebx
lea ecx, [esi + edi]
mov dword [esp + 0x50], ecx
lea ebx, [edi + esi - 0x20]
shr ebp, cl
mov esi, ebx
neg ebx
mov dword [esp + 0x4c], ebx
mov edi, ecx
mov ecx, ebx
shl edx, cl
shr edi, 5
cmp edi, 1
sbb edi, edi
xor edi, 0xffffffff
mov dword [esp + 0x48], edi
cmp esi, 0x20
sbb eax, eax
not eax
or esi, eax
mov dword [esp + 0x44], esi
mov ecx, esi
mov eax, dword [esp + 0x54]
sar eax, cl
and eax, edi
mov edi, dword [esp + 0x50]
cmp edi, 0x20
sbb ecx, ecx
mov dword [esp + 0x40], ecx
and ebp, ecx
not ecx
or ecx, edi
mov dword [esp + 0x3c], ecx
mov esi, dword [esp + 0x54]
sar esi, cl
cmp ebx, 0x20
sbb edi, edi
mov dword [esp + 0x38], edi
and edx, edi
or edx, ebp
or eax, edx
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], 0x20
call sym.cmd_internal_obj_riscv.immIFits
mov eax, dword [esp + 0xc]
test eax, eax
je 0x55bef4
mov edx, dword [esp + 0x74]
xor eax, eax
jmp 0x55bf6b
mov eax, dword [esp + 0x74]
mov edx, dword [eax + 0x1c]
mov ebx, dword [eax + 0x18]
mov ecx, dword [esp + 0x4c]
mov ebp, edx
shl edx, cl
mov esi, dword [esp + 0x38]
and edx, esi
mov ecx, dword [esp + 0x3c]
mov esi, ebp
sar ebp, cl
mov ecx, dword [esp + 0x50]
shr ebx, cl
mov edi, dword [esp + 0x40]
and ebx, edi
or edx, ebx
mov ecx, dword [esp + 0x44]
sar esi, cl
mov edi, dword [esp + 0x48]
and esi, edi
or edx, esi
mov dword [eax + 0x18], edx
mov dword [eax + 0x1c], ebp
lea edx, [0x5dab60]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov word [eax + 4], 0x4014
mov edx, dword [esp + 0x74]
mov ebx, dword [edx + 8]
mov dword [eax + 8], ebx
mov ebx, dword [edx + 8]
mov dword [eax + 0xc], ebx
mov ebx, dword [esp + 0x50]
mov dword [eax + 0x18], ebx
sar ebx, 0x1f
mov dword [eax + 0x1c], ebx
mov dword [esp + 0x58], eax
mov ecx, dword [edx + 0x18]
mov ebx, dword [edx + 0x1c]
mov dword [esp], ecx
mov dword [esp + 4], ebx
call sym.cmd_internal_obj_riscv.Split32BitImmediate
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
test eax, eax
jne 0x55c155
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x74]
mov word [ebp + 4], 0x400e
mov dword [ebp + 0xc], 0x3c00
mov dword [ebp + 0x10], 0
mov dword [ebp + 0x18], eax
mov dword [ebp + 0x1c], edx
test ebx, ebx
xchg esi, ebx
setne bl
xchg esi, ebx
test ecx, ecx
xchg edi, ebx
setne bl
xchg edi, ebx
or esi, edi
xchg esi, eax
test al, al
xchg esi, eax
jne 0x55bfef
mov edx, 1
mov ecx, dword [esp + 0x10c]
mov eax, 1
jmp 0x55c0f1
mov dword [esp + 0x30], ebx
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x28], edx
mov dword [esp + 0x24], eax
lea eax, [0x5dab60]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x5c], eax
mov word [eax + 4], 0x4017
mov ecx, dword [esp + 0x74]
mov edx, dword [ecx + 8]
mov dword [eax + 8], edx
mov edx, dword [esp + 0x2c]
mov dword [eax + 0x18], edx
mov edx, dword [esp + 0x30]
mov dword [eax + 0x1c], edx
lea edx, [0x5c8720]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [0x7a14d8]
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0x24]
test edx, edx
setne dl
mov ebx, dword [esp + 0x28]
test ebx, ebx
setne bl
or edx, ebx
test eax, eax
jne 0x55c069
mov eax, dword [esp + 0x5c]
jmp 0x55c074
call sym.runtime.gcWriteBarrier1
mov eax, dword [esp + 0x5c]
mov dword [edi], eax
mov dword [ecx], eax
test dl, dl
jne 0x55c086
mov edx, 1
mov eax, 1
jmp 0x55c0f1
mov eax, dword [esp + 0x74]
mov edx, dword [eax + 8]
mov word [eax + 4], 0x4037
mov dword [eax + 0xc], edx
mov dword [esp], ecx
mov dword [esp + 4], 2
mov dword [esp + 8], 1
mov dword [esp + 0xc], 1
lea ecx, [0x5d8200]
mov dword [esp + 0x10], ecx
call sym.runtime.growslice
mov eax, dword [0x7a14d8]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
test eax, eax
jne 0x55c0d8
mov eax, dword [esp + 0x74]
jmp 0x55c0e9
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x74]
mov dword [edi], eax
mov ebx, dword [ecx + 4]
mov dword [edi + 4], ebx
mov dword [ecx + 4], eax
mov eax, 2
mov ebx, dword [esp + 0x58]
test ebx, ebx
je 0x55cdbe
inc eax
cmp edx, eax
jae 0x55c134
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x5d8200]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x58]
mov ebp, dword [0x7a14d8]
test ebp, ebp
je 0x55c14c
call sym.runtime.gcWriteBarrier2
mov dword [edi], ebx
mov ebp, dword [ecx + eax*4 - 4]
mov dword [edi + 4], ebp
mov dword [ecx + eax*4 - 4], ebx
jmp 0x55cdbe
mov dword [esp + 0x78], ecx
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x114]
mov ecx, dword [eax]
mov dword [esp + 0x9c], ecx
lea edx, [0x5c6c00]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
lea ecx, [0x5de540]
mov dword [eax], ecx
mov ecx, dword [0x7a14d8]
test ecx, ecx
jne 0x55c19a
mov ecx, dword [esp + 0x114]
jmp 0x55c1a8
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x114]
mov dword [edi], ecx
mov dword [esp + 0x108], eax
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x74]
mov edx, dword [ecx + 0x18]
mov ecx, dword [ecx + 0x1c]
mov dword [esp], edx
mov dword [esp + 4], ecx
call sym.runtime.convT64
mov eax, dword [esp + 8]
lea ecx, [0x5c9340]
mov edx, dword [esp + 0x108]
mov dword [edx + 8], ecx
mov ecx, dword [0x7a14d8]
test ecx, ecx
jne 0x55c1ee
mov ecx, dword [esp + 0x34]
test ecx, ecx
jmp 0x55c201
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0xc]
mov dword [edi + 4], ecx
mov ecx, dword [esp + 0x34]
test ecx, ecx
mov dword [edx + 0xc], eax
je 0x55c20b
mov eax, dword [ecx + 4]
jmp 0x55c20d
mov eax, ecx
mov dword [edx + 0x10], eax
mov eax, dword [0x7a14d8]
test eax, eax
jne 0x55c220
mov eax, dword [esp + 0x78]
jmp 0x55c231
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x78]
mov dword [edi], eax
mov ecx, dword [edx + 0x14]
mov dword [edi + 4], ecx
mov dword [edx + 0x14], eax
mov eax, dword [esp + 0x9c]
inc dword [eax + 0x90]
mov eax, dword [eax + 0x80]
mov ecx, dword [eax]
lea ebx, [0x5f773f]
mov dword [esp], ebx
mov dword [esp + 4], 0x1d
mov dword [esp + 8], edx
mov dword [esp + 0xc], 3
mov dword [esp + 0x10], 3
mov edx, eax
call ecx
mov dword [esp + 0x118], 0
mov dword [esp + 0x11c], 0
mov dword [esp + 0x120], 0
add esp, 0x110
ret
cmp bl, 4
jne 0x55c359
xchg ebp, eax
cmp al, 7
xchg ebp, eax
je 0x55c359
mov eax, dword [edx]
mov dword [esp + 0x98], eax
lea ecx, [0x5c6b80]
mov dword [esp], ecx
call sym.runtime.newobject
mov eax, dword [esp + 4]
lea ecx, [0x5de540]
mov dword [eax], ecx
mov ecx, dword [0x7a14d8]
test ecx, ecx
jne 0x55c2e4
mov ecx, dword [esp + 0x114]
jmp 0x55c2f2
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x114]
mov dword [edi], ecx
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x98]
inc dword [ecx + 0x90]
mov edx, dword [ecx + 0x80]
mov ecx, dword [edx]
lea ebx, [0x5fb397]
mov dword [esp], ebx
mov dword [esp + 4], 0x26
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call ecx
mov dword [esp + 0x118], 0
mov dword [esp + 0x11c], 0
mov dword [esp + 0x120], 0
add esp, 0x110
ret
cmp bl, 7
jne 0x55c66b
cmp byte [edx + 0x3a], 7
jne 0x55c66b
movzx ebx, word [edx + 0x74]
cmp bx, 0x40f6
jg 0x55c41e
cmp bx, 0x40f4
jg 0x55c3ca
cmp bx, 0x40f3
jne 0x55c3ba
movsx edx, word [edx + 8]
mov word [eax + 4], 0x400e
mov dword [eax + 0xc], edx
mov dword [eax + 0x10], 0
mov dword [eax + 0x18], 0
mov dword [eax + 0x1c], 0
mov edx, 1
mov eax, 1
jmp 0x55cdbe
cmp bx, 0x40f4
je 0x55c44c
jmp 0x55c65c
cmp bx, 0x40f5
jne 0x55c402
movsx edx, word [edx + 8]
mov word [eax + 4], 0x4011
mov dword [eax + 0xc], edx
mov dword [eax + 0x10], 0
mov dword [eax + 0x18], 0xff
mov dword [eax + 0x1c], 0
mov edx, 1
mov eax, 1
jmp 0x55cdbe
movsx edx, word [edx + 8]
mov word [eax + 4], 0x4088
mov dword [eax + 0xc], edx
mov edx, 1
mov eax, 1
jmp 0x55cdbe
cmp bx, 0x40f8
jg 0x55c52f
cmp bx, 0x40f7
jne 0x55c44c
movsx edx, word [edx + 8]
mov word [eax + 4], 0x40aa
mov dword [eax + 0xc], edx
mov edx, 1
mov eax, 1
jmp 0x55cdbe
movsx ebx, word [edx + 8]
mov word [eax + 4], 0x4014
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], 0
movzx edx, word [edx + 0x74]
cmp dx, 0x40f4
jne 0x55c47b
mov dword [eax + 0x18], 0x38
mov dword [eax + 0x1c], 0
jmp 0x55c490
cmp dx, 0x40f8
jne 0x55c490
mov dword [eax + 0x18], 0x30
mov dword [eax + 0x1c], 0
lea eax, [0x5dab60]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x70], eax
mov word [eax + 4], 0x4016
mov ecx, dword [esp + 0x74]
mov edx, dword [ecx + 8]
mov dword [eax + 8], edx
mov edx, dword [ecx + 8]
mov dword [eax + 0xc], edx
mov edx, dword [ecx + 0x18]
mov ecx, dword [ecx + 0x1c]
mov dword [eax + 0x18], edx
mov dword [eax + 0x1c], ecx
mov ecx, dword [esp + 0x10c]
mov dword [esp], ecx
mov dword [esp + 4], 2
mov dword [esp + 8], 1
mov dword [esp + 0xc], 1
lea ecx, [0x5d8200]
mov dword [esp + 0x10], ecx
call sym.runtime.growslice
mov eax, dword [0x7a14d8]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
test eax, eax
jne 0x55c511
mov eax, dword [esp + 0x70]
jmp 0x55c522
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x70]
mov dword [edi], eax
mov ebx, dword [ecx + 4]
mov dword [edi + 4], ebx
mov dword [ecx + 4], eax
mov eax, 2
jmp 0x55cdbe
cmp bx, 0x40f9
je 0x55c579
cmp bx, 0x40fa
jne 0x55c56e
movsx ebx, word [edx + 8]
mov word [eax + 4], 0x4037
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], 0
mov dword [eax + 0x18], 0
mov dword [eax + 0x1c], 0
mov edx, 1
mov eax, 1
jmp 0x55cdbe
cmp bx, 0x40fb
jne 0x55c65c
movsx ebx, word [edx + 8]
mov word [eax + 4], 0x4014
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], 0
movzx edx, word [edx + 0x74]
cmp dx, 0x40f9
jne 0x55c5a8
mov dword [eax + 0x18], 0x30
mov dword [eax + 0x1c], 0
jmp 0x55c5bd
cmp dx, 0x40fb
jne 0x55c5bd
mov dword [eax + 0x18], 0x20
mov dword [eax + 0x1c], 0
lea eax, [0x5dab60]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x6c], eax
mov word [eax + 4], 0x4015
mov ecx, dword [esp + 0x74]
mov edx, dword [ecx + 8]
mov dword [eax + 8], edx
mov edx, dword [ecx + 8]
mov dword [eax + 0xc], edx
mov edx, dword [ecx + 0x18]
mov ecx, dword [ecx + 0x1c]
mov dword [eax + 0x18], edx
mov dword [eax + 0x1c], ecx
mov ecx, dword [esp + 0x10c]
mov dword [esp], ecx
mov dword [esp + 4], 2
mov dword [esp + 8], 1
mov dword [esp + 0xc], 1
lea ecx, [0x5d8200]
mov dword [esp + 0x10], ecx
call sym.runtime.growslice
mov eax, dword [0x7a14d8]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
test eax, eax
jne 0x55c63e
mov eax, dword [esp + 0x6c]
jmp 0x55c64f
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x6c]
mov dword [edi], eax
mov ebx, dword [ecx + 4]
mov dword [edi + 4], ebx
mov dword [ecx + 4], eax
mov eax, 2
jmp 0x55cdbe
mov edx, 1
mov eax, 1
jmp 0x55cdbe
cmp bl, 3
jne 0x55c8bd
cmp byte [edx + 0x3a], 7
jne 0x55c8b8
movzx ecx, byte [edx + 0xf]
test cl, cl
je 0x55c789
lea ebx, [ecx - 1]
cmp bl, 1
ja 0x55c781
mov ecx, dword [edx + 0x1c]
cmp byte [ecx + 8], 7
je 0x55c751
lea eax, [0x5dab60]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x68], eax
mov word [eax + 4], 0x4018
mov ecx, dword [esp + 0x74]
mov edx, dword [ecx + 8]
mov dword [eax + 8], edx
mov edx, dword [esp + 0x114]
movzx edx, word [edx + 0x74]
mov word [esp], dx
call sym.cmd_internal_obj_riscv.movToLoad
movzx eax, word [esp + 4]
mov ecx, dword [esp + 0x74]
mov edx, dword [ecx + 8]
mov word [ecx + 4], ax
mov dword [ecx + 0xc], edx
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x18], 0
mov dword [ecx + 0x1c], 0
lea eax, [0x5c8760]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [0x7a14d8]
mov ecx, dword [esp + 4]
test eax, eax
jne 0x55c72b
mov eax, dword [esp + 0x68]
mov edx, dword [esp + 0x74]
jmp 0x55c73d
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x68]
mov dword [edi], eax
mov edx, dword [esp + 0x74]
mov dword [edi + 4], edx
mov dword [ecx], eax
mov dword [ecx + 4], edx
mov edx, 2
mov eax, 2
jmp 0x55cdbe
mov dword [esp], edx
call sym.cmd_internal_obj_riscv.instructionsForTLSLoad
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xc]
mov dword [esp + 0x118], eax
mov dword [esp + 0x11c], ecx
mov dword [esp + 0x120], edx
add esp, 0x110
ret
lea eax, [ecx - 3]
cmp al, 1
ja 0x55c7fd
movzx eax, word [edx + 0x74]
mov word [esp], ax
call sym.cmd_internal_obj_riscv.movToLoad
mov eax, dword [esp + 0x114]
lea esi, [eax + 8]
movzx ecx, word [esp + 4]
mov word [esp + 0x22], cx
lea edi, [esp + 0xe8]
call fcn.00468740
movzx ecx, byte [esp + 0xef]
add ecx, 0xfffffffd
cmp cl, 1
ja 0x55c7cd
mov ecx, 0x3c02
jmp 0x55c7d5
movzx ecx, word [esp + 0xe8]
mov dword [esp], eax
movzx eax, word [esp + 0x22]
mov word [esp + 4], ax
mov word [esp + 6], cx
call sym.cmd_internal_obj_riscv.instructionsForLoad
mov ecx, dword [esp + 8]
mov eax, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
jmp 0x55cdbe
mov eax, dword [edx]
mov dword [esp + 0x94], eax
lea ecx, [0x5c6bc0]
mov dword [esp], ecx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x114]
movzx edx, byte [ecx + 0xf]
lea ebx, [0x5c9000]
mov dword [eax], ebx
lea ebx, [0x7270e0]
lea edx, [ebx + edx*8]
mov dword [eax + 4], edx
lea edx, [0x5de540]
mov dword [eax + 8], edx
mov edx, dword [0x7a14d8]
test edx, edx
je 0x55c851
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
mov dword [eax + 0xc], ecx
mov ecx, dword [esp + 0x94]
inc dword [ecx + 0x90]
mov edx, dword [ecx + 0x80]
mov ecx, dword [edx]
lea ebx, [0x5f609a]
mov dword [esp], ebx
mov dword [esp + 4], 0x1a
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call ecx
mov dword [esp + 0x118], 0
mov dword [esp + 0x11c], 0
mov dword [esp + 0x120], 0
add esp, 0x110
ret
cmp bl, 7
jmp 0x55c8c0
cmp bl, 7
jne 0x55cbdc
cmp byte [edx + 0x3a], 3
jne 0x55cbdc
movzx ecx, word [edx + 0x74]
cmp cx, 0x40f5
je 0x55c8ed
cmp cx, 0x40f9
je 0x55c8ed
cmp cx, 0x40fb
jne 0x55c998
mov eax, dword [edx]
mov dword [esp + 0x90], eax
lea ecx, [0x5c6b80]
mov dword [esp], ecx
call sym.runtime.newobject
mov eax, dword [esp + 4]
lea ecx, [0x5de540]
mov dword [eax], ecx
mov ecx, dword [0x7a14d8]
test ecx, ecx
jne 0x55c923
mov ecx, dword [esp + 0x114]
jmp 0x55c931
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x114]
mov dword [edi], ecx
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x90]
inc dword [ecx + 0x90]
mov edx, dword [ecx + 0x80]
mov ecx, dword [edx]
lea ebx, [0x5f7e9d]
mov dword [esp], ebx
mov dword [esp + 4], 0x1e
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call ecx
mov dword [esp + 0x118], 0
mov dword [esp + 0x11c], 0
mov dword [esp + 0x120], 0
add esp, 0x110
ret
movzx ebx, byte [edx + 0x3b]
test bl, bl
je 0x55cab1
lea ebp, [ebx - 1]
xchg ebp, eax
cmp al, 1
xchg ebp, eax
ja 0x55caa9
mov ecx, dword [edx + 0x48]
cmp byte [ecx + 8], 7
je 0x55ca79
lea eax, [0x5dab60]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x64], eax
mov word [eax + 4], 0x4018
mov dword [eax + 8], 0x3c1f
mov ecx, dword [esp + 0x114]
movzx edx, word [ecx + 0x74]
mov word [esp], dx
call sym.cmd_internal_obj_riscv.movToStore
movzx eax, word [esp + 4]
mov ecx, dword [esp + 0x114]
movsx ecx, word [ecx + 8]
mov edx, dword [esp + 0x74]
mov word [edx + 4], ax
mov dword [edx + 8], 0x3c1f
mov dword [edx + 0xc], ecx
mov dword [edx + 0x10], 0
mov dword [edx + 0x18], 0
mov dword [edx + 0x1c], 0
lea eax, [0x5c8760]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [0x7a14d8]
mov ecx, dword [esp + 4]
test eax, eax
jne 0x55ca53
mov eax, dword [esp + 0x64]
mov edx, dword [esp + 0x74]
jmp 0x55ca65
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x64]
mov dword [edi], eax
mov edx, dword [esp + 0x74]
mov dword [edi + 4], edx
mov dword [ecx], eax
mov dword [ecx + 4], edx
mov eax, 2
mov edx, 2
jmp 0x55cdbe
mov dword [esp], edx
call sym.cmd_internal_obj_riscv.instructionsForTLSStore
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xc]
mov dword [esp + 0x118], eax
mov dword [esp + 0x11c], ecx
mov dword [esp + 0x120], edx
add esp, 0x110
ret
lea eax, [ebx - 3]
cmp al, 1
ja 0x55cb21
mov word [esp], cx
call sym.cmd_internal_obj_riscv.movToStore
mov eax, dword [esp + 0x114]
lea esi, [eax + 0x34]
movzx ecx, word [esp + 4]
mov word [esp + 0x22], cx
lea edi, [esp + 0xc8]
call fcn.00468740
movzx ecx, byte [esp + 0xcf]
add ecx, 0xfffffffd
cmp cl, 1
ja 0x55caf1
mov ecx, 0x3c02
jmp 0x55caf9
movzx ecx, word [esp + 0xc8]
mov dword [esp], eax
movzx eax, word [esp + 0x22]
mov word [esp + 4], ax
mov word [esp + 6], cx
call sym.cmd_internal_obj_riscv.instructionsForStore
mov ecx, dword [esp + 8]
mov eax, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
jmp 0x55cdbe
mov eax, dword [edx]
mov dword [esp + 0x8c], eax
lea ecx, [0x5c6bc0]
mov dword [esp], ecx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x114]
movzx edx, byte [ecx + 0xf]
lea ebx, [0x5c9000]
mov dword [eax], ebx
lea ebx, [0x7270e0]
lea edx, [ebx + edx*8]
mov dword [eax + 4], edx
lea edx, [0x5de540]
mov dword [eax + 8], edx
mov edx, dword [0x7a14d8]
test edx, edx
je 0x55cb75
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
mov dword [eax + 0xc], ecx
mov ecx, dword [esp + 0x8c]
inc dword [ecx + 0x90]
mov edx, dword [ecx + 0x80]
mov ecx, dword [edx]
lea ebx, [0x5f609a]
mov dword [esp], ebx
mov dword [esp + 4], 0x1a
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call ecx
mov dword [esp + 0x118], 0
mov dword [esp + 0x11c], 0
mov dword [esp + 0x120], 0
add esp, 0x110
ret
cmp bl, 8
jne 0x55cf42
movzx ecx, byte [edx + 0x3a]
cmp cl, 7
jne 0x55ce85
cmp word [edx + 0x74], 0x40f3
jne 0x55cdda
movzx ecx, byte [edx + 0xf]
test cl, cl
je 0x55cc1a
lea ebx, [ecx - 1]
cmp bl, 1
jbe 0x55cd28
lea eax, [ecx - 3]
cmp al, 1
ja 0x55cc6d
lea esi, [edx + 8]
lea edi, [esp + 0xa8]
call fcn.00468740
movzx eax, byte [esp + 0xaf]
add eax, 0xfffffffd
cmp al, 1
ja 0x55cc40
mov eax, 0x3c02
jmp 0x55cc48
movzx eax, word [esp + 0xa8]
mov dword [esp], edx
mov word [esp + 4], 0x400e
mov word [esp + 6], ax
call sym.cmd_internal_obj_riscv.instructionsForOpImmediate
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
jmp 0x55cdb8
mov eax, dword [edx]
mov dword [esp + 0x84], eax
lea ecx, [0x5c6bc0]
mov dword [esp], ecx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x114]
movzx edx, byte [ecx + 0xf]
lea ebx, [0x5c9000]
mov dword [eax], ebx
lea ebx, [0x7270e0]
lea edx, [ebx + edx*8]
mov dword [eax + 4], edx
lea edx, [0x5de540]
mov dword [eax + 8], edx
mov edx, dword [0x7a14d8]
test edx, edx
je 0x55ccc1
call sym.runtime.gcWriteBarrier1
mov dword [edi], ecx
mov dword [eax + 0xc], ecx
mov ecx, dword [esp + 0x84]
inc dword [ecx + 0x90]
mov edx, dword [ecx + 0x80]
mov ecx, dword [edx]
lea ebx, [0x5f609a]
mov dword [esp], ebx
mov dword [esp + 4], 0x1a
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call ecx
mov dword [esp + 0x118], 0
mov dword [esp + 0x11c], 0
mov dword [esp + 0x120], 0
add esp, 0x110
ret
lea eax, [0x5dab60]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x60], eax
mov word [eax + 4], 0x4018
mov ecx, dword [esp + 0x74]
mov edx, dword [ecx + 8]
mov dword [eax + 8], edx
mov edx, dword [ecx + 8]
mov word [ecx + 4], 0x400e
mov dword [ecx + 0xc], edx
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x18], 0
mov dword [ecx + 0x1c], 0
lea edx, [0x5c8760]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [0x7a14d8]
mov ecx, dword [esp + 4]
test eax, eax
jne 0x55cd95
mov eax, dword [esp + 0x60]
mov edx, dword [esp + 0x74]
jmp 0x55cda7
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x60]
mov dword [edi], eax
mov edx, dword [esp + 0x74]
mov dword [edi + 4], edx
mov dword [ecx], eax
mov dword [ecx + 4], edx
mov edx, 2
mov eax, ecx
mov ecx, 2
mov ebx, eax
mov eax, ecx
mov ecx, ebx
mov dword [esp + 0x118], ecx
mov dword [esp + 0x11c], eax
mov dword [esp + 0x120], edx
add esp, 0x110
ret
mov eax, dword [edx]
mov dword [esp + 0x88], eax
lea ecx, [0x5c6b80]
mov dword [esp], ecx
call sym.runtime.newobject
mov eax, dword [esp + 4]
lea ecx, [0x5de540]
mov dword [eax], ecx
mov ecx, dword [0x7a14d8]
test ecx, ecx
jne 0x55ce10
mov ecx, dword [esp + 0x114]
jmp 0x55ce1e
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x114]
mov dword [edi], ecx
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x88]
inc dword [ecx + 0x90]
mov edx, dword [ecx + 0x80]
mov ecx, dword [edx]
lea ebx, [0x5f6fec]
mov dword [esp], ebx
mov dword [esp + 4], 0x1c
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call ecx
mov dword [esp + 0x118], 0
mov dword [esp + 0x11c], 0
mov dword [esp + 0x120], 0
add esp, 0x110
ret
cmp bl, 8
jne 0x55cf42
cmp cl, 7
je 0x55cf42
mov eax, dword [edx]
mov dword [esp + 0x80], eax
lea ecx, [0x5c6b80]
mov dword [esp], ecx
call sym.runtime.newobject
mov eax, dword [esp + 4]
lea ecx, [0x5de540]
mov dword [eax], ecx
mov ecx, dword [0x7a14d8]
test ecx, ecx
jne 0x55cecd
mov ecx, dword [esp + 0x114]
jmp 0x55cedb
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x114]
mov dword [edi], ecx
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x80]
inc dword [ecx + 0x90]
mov edx, dword [ecx + 0x80]
mov ecx, dword [edx]
lea ebx, [0x5fad8a]
mov dword [esp], ebx
mov dword [esp + 4], 0x25
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call ecx
mov dword [esp + 0x118], 0
mov dword [esp + 0x11c], 0
mov dword [esp + 0x120], 0
add esp, 0x110
ret
mov eax, dword [edx]
mov dword [esp + 0x7c], eax
lea ecx, [0x5c6b80]
mov dword [esp], ecx
call sym.runtime.newobject
mov eax, dword [esp + 4]
lea ecx, [0x5de540]
mov dword [eax], ecx
mov ecx, dword [0x7a14d8]
test ecx, ecx
jne 0x55cf75
mov ecx, dword [esp + 0x114]
jmp 0x55cf83
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x114]
mov dword [edi], ecx
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x7c]
inc dword [ecx + 0x90]
mov edx, dword [ecx + 0x80]
mov ecx, dword [edx]
lea ebx, [0x5f240f]
mov dword [esp], ebx
mov dword [esp + 4], 0x13
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call ecx
mov dword [esp + 0x118], 0
mov dword [esp + 0x11c], 0
mov dword [esp + 0x120], 0
add esp, 0x110
ret
mov eax, dword [edx]
mov dword [esp + 0xa4], eax
lea ecx, [0x5c6b80]
mov dword [esp], ecx
call sym.runtime.newobject
mov eax, dword [esp + 4]
lea ecx, [0x5de540]
mov dword [eax], ecx
mov ecx, dword [0x7a14d8]
test ecx, ecx
jne 0x55d01d
mov ecx, dword [esp + 0x114]
jmp 0x55d02b
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x114]
mov dword [edi], ecx
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0xa4]
inc dword [ecx + 0x90]
mov edx, dword [ecx + 0x80]
mov ecx, dword [edx]
lea ebx, [0x5f68fa]
mov dword [esp], ebx
mov dword [esp + 4], 0x1b
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call ecx
mov dword [esp + 0x118], 0
mov dword [esp + 0x11c], 0
mov dword [esp + 0x120], 0
add esp, 0x110
ret
call sym.runtime.morestack_noctxt
jmp sym.cmd_internal_obj_riscv.instructionsForMOV