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

Disassembly:
mov ecx, dword [0x7a1414]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x34]
cmp eax, dword [ecx + 8]
jbe 0x5965af
sub esp, 0xb4
mov eax, dword [esp + 0xbc]
mov ecx, dword [eax + 0x34]
test ecx, ecx
je 0x594e7f
lea edx, [0x5d78a0]
cmp dword [ecx], edx
jne 0x594e7b
mov ebx, dword [ecx + 4]
jmp 0x594e87
xor ebx, ebx
jmp 0x594e87
lea edx, [0x5d78a0]
xor ebx, ebx
mov ebx, dword [ebx + 0x14]
test ebx, ebx
je 0x594ece
test ecx, ecx
je 0x594e9f
cmp dword [ecx], edx
jne 0x594e9b
mov ebx, dword [ecx + 4]
jmp 0x594ea1
xor ebx, ebx
jmp 0x594ea1
xor ebx, ebx
mov ebx, dword [ebx + 0x14]
mov ebx, dword [ebx + 4]
test ebx, ebx
je 0x594ece
test ecx, ecx
je 0x594ebc
cmp dword [ecx], edx
jne 0x594eb8
mov ecx, dword [ecx + 4]
jmp 0x594ebe
xor ecx, ecx
jmp 0x594ebe
xor ecx, ecx
mov ecx, dword [ecx + 0x14]
mov ebx, dword [ecx + 0x40]
test ebx, ebx
jge 0x594eca
xor ebx, ebx
mov ebp, ecx
jmp 0x594ed8
add esp, 0xb4
ret
mov ecx, dword [ecx + 4]
test ecx, ecx
je 0x594ef2
movzx esi, word [ecx + 0x74]
cmp si, 1
je 0x594ef2
cmp si, 2
je 0x594ef2
cmp si, 3
jne 0x594ed5
mov dword [esp + 0xa0], ebp
mov dword [esp + 0x3c], ebx
mov esi, dword [esp + 0xb8]
mov edi, dword [esi + 4]
mov edi, dword [edi]
cmp byte [edi + 8], 1
je 0x594f13
xor edi, edi
jmp 0x594f5f
mov dword [esp + 0x80], ecx
mov eax, dword [ebp + 0x1c]
test byte [eax], al
add eax, 0xc
nop
mov dword [esp], eax
call sym.sync_atomic.LoadUint32
mov eax, dword [esp + 4]
test eax, 0x40
sete al
mov ecx, dword [esp + 0x80]
lea edx, [0x5d78a0]
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0xa0]
mov esi, dword [esp + 0xb8]
mov edi, eax
mov eax, dword [esp + 0xbc]
xchg edi, eax
test al, al
xchg edi, eax
je 0x594f94
test ebx, ebx
jne 0x594f6d
test ecx, ecx
je 0x594f94
mov ecx, dword [esi + 4]
mov ecx, dword [ecx]
mov ecx, dword [ecx + 0x14]
mov dword [esp + 0x38], ecx
mov edi, dword [ebp + 0x40]
mov esi, dword [ebp + 0x44]
sar ecx, 0x1f
mov edx, dword [esp + 0x38]
add ebx, edx
add edi, edx
mov dword [ebp + 0x40], edi
adc ecx, esi
mov dword [ebp + 0x44], ecx
jmp 0x594fc5
mov eax, dword [ebp + 0x1c]
test byte [eax], al
add eax, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0x40
mov byte [esp + 8], 1
call sym.cmd_internal_obj._Attribute_.Set
mov eax, dword [esp + 0xbc]
mov ebp, dword [esp + 0xa0]
xor edx, edx
mov ebx, dword [esp + 0x3c]
mov ecx, dword [ebp + 0x4c]
lea esi, [0x5c92c0]
cmp ecx, esi
jne 0x596598
mov ecx, dword [eax + 0x34]
test ecx, ecx
je 0x594ff0
lea edi, [0x5d78a0]
cmp dword [ecx], edi
jne 0x594fec
mov ecx, dword [ecx + 4]
jmp 0x594ff8
xor ecx, ecx
jmp 0x594ff8
lea edi, [0x5d78a0]
xor ecx, ecx
mov esi, dword [ebp + 0x50]
mov esi, dword [esi]
mov dword [ecx], esi
mov ecx, dword [eax + 0x34]
test ecx, ecx
je 0x595013
cmp dword [ecx], edi
jne 0x59500f
mov ecx, dword [ecx + 4]
jmp 0x595015
xor ecx, ecx
jmp 0x595015
xor ecx, ecx
mov dword [esp + 0x48], esi
mov dword [esp + 0x38], edx
mov edx, dword [ebp + 0x40]
mov dword [ecx + 4], edx
mov ecx, dword [esp + 0xb8]
mov edx, dword [ecx + 4]
mov edx, dword [edx]
cmp byte [edx + 8], 4
jne 0x595096
mov edx, dword [eax + 0x34]
test edx, edx
je 0x59505b
cmp dword [edx], edi
jne 0x59504d
mov esi, dword [edx + 4]
mov dword [esp + 0x54], esi
mov esi, dword [esp + 0x48]
jmp 0x595067
xor edi, edi
mov dword [esp + 0x54], edi
lea edi, [0x5d78a0]
jmp 0x595067
xor edi, edi
mov dword [esp + 0x54], edi
lea edi, [0x5d78a0]
mov esi, dword [esp + 0x54]
mov esi, dword [esi + 4]
test esi, esi
jge 0x595092
test edx, edx
je 0x595083
cmp dword [edx], edi
jne 0x59507f
mov edx, dword [edx + 4]
jmp 0x595085
xor edx, edx
jmp 0x595085
xor edx, edx
mov dword [edx + 4], 0
mov esi, dword [esp + 0x48]
jmp 0x595096
mov esi, dword [esp + 0x48]
mov dword [esp + 0x3c], ebx
mov edx, dword [ecx + 4]
mov edx, dword [edx]
cmp byte [edx + 8], 1
jne 0x5950f5
cmp ebx, 0x80
jl 0x5950b1
xor edx, edx
jmp 0x5950f7
mov eax, dword [ebp + 0x1c]
test byte [eax], al
add eax, 0xc
nop
mov dword [esp], eax
call sym.sync_atomic.LoadUint32
mov eax, dword [esp + 4]
test eax, 4
sete al
mov ecx, dword [esp + 0xb8]
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0xa0]
mov esi, dword [esp + 0x48]
lea edi, [0x5d78a0]
mov edx, eax
mov eax, dword [esp + 0xbc]
jmp 0x5950f7
xor edx, edx
test dl, dl
je 0x595102
mov edx, ebp
jmp 0x596334
mov edx, dword [ecx + 4]
mov edx, dword [edx]
cmp byte [edx + 8], 1
jne 0x595123
mov edx, 0x81c
mov edx, 0x81d
mov word [esp + 0x24], dx
mov edx, 0x81c
jmp 0x595137
mov edx, 0x813
mov edx, 0x817
mov word [esp + 0x24], dx
mov edx, 0x813
mov word [esp + 0x26], dx
mov eax, dword [ebp + 0x1c]
test byte [eax], al
add eax, 0xc
mov dword [esp], eax
call sym.sync_atomic.LoadUint32
mov eax, dword [esp + 4]
test eax, 4
je 0x5951c2
mov eax, dword [esp + 0xa0]
mov ecx, dword [eax + 0x1c]
test byte [ecx], al
add ecx, 0xc
mov dword [esp], ecx
call sym.sync_atomic.LoadUint32
mov eax, dword [esp + 4]
test eax, 0x10
jne 0x595187
mov ecx, dword [esp + 0xa0]
xor eax, eax
jmp 0x59520b
mov eax, dword [esp + 0xb8]
mov dword [esp], eax
mov ecx, dword [esp + 0xbc]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xa0]
mov dword [esp + 8], edx
mov edx, dword [esp + 0xc0]
mov dword [esp + 0xc], edx
call sym.cmd_internal_obj_x86.loadG
mov ecx, dword [esp + 0x10]
movzx eax, word [esp + 0x14]
jmp 0x59520b
mov eax, dword [esp + 0xb8]
mov dword [esp], eax
mov ecx, dword [esp + 0xbc]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xa0]
mov dword [esp + 8], edx
mov edx, dword [esp + 0xc0]
mov dword [esp + 0xc], edx
mov ebx, dword [esp + 0x3c]
mov dword [esp + 0x10], ebx
mov ebp, dword [esp + 0x48]
mov dword [esp + 0x14], ebp
call sym.cmd_internal_obj_x86.stacksplit
mov ecx, dword [esp + 0x18]
movzx eax, word [esp + 0x1c]
mov word [esp + 0x22], ax
mov ebx, dword [esp + 0x38]
test ebx, ebx
jle 0x5952f9
mov dword [esp + 0x88], ecx
mov edx, dword [esp + 0xc0]
mov eax, dword [edx]
nop
call eax
mov eax, dword [esp]
test byte [eax], al
mov ecx, dword [0x7a14d8]
mov ebx, dword [esp + 0x88]
mov ebp, dword [ebx + 4]
test ecx, ecx
je 0x59525e
call sym.runtime.gcWriteBarrier4
mov dword [edi], ebp
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov dword [edi + 8], eax
mov ecx, dword [ebx + 4]
mov dword [edi + 0xc], ecx
mov dword [esp + 0x88], eax
mov dword [eax + 4], ebp
mov dword [ebx + 4], eax
mov ecx, dword [ebx + 0x6c]
mov ebx, dword [ebx + 0x68]
mov dword [eax + 0x68], ebx
mov dword [eax + 0x6c], ecx
mov word [eax + 0x74], 0x1adf
mov byte [eax + 0xe], 7
mov word [eax + 8], 0x815
mov edx, dword [esp + 0xc0]
mov ecx, dword [edx]
nop
call ecx
mov eax, dword [esp]
test byte [eax], al
mov ecx, dword [0x7a14d8]
mov ebx, dword [esp + 0x88]
mov ebp, dword [ebx + 4]
test ecx, ecx
je 0x5952c2
call sym.runtime.gcWriteBarrier4
mov dword [edi], ebp
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov dword [edi + 8], eax
mov ecx, dword [ebx + 4]
mov dword [edi + 0xc], ecx
mov dword [eax + 4], ebp
mov dword [ebx + 4], eax
mov ebp, dword [ebx + 0x6c]
mov ebx, dword [ebx + 0x68]
mov dword [eax + 0x68], ebx
mov dword [eax + 0x6c], ebp
mov word [eax + 0x74], 0x1a15
mov byte [eax + 0xe], 7
mov word [eax + 8], 0x814
mov byte [eax + 0x3a], 7
mov word [eax + 0x34], 0x815
mov ebx, dword [esp + 0x38]
mov ecx, eax
movzx eax, word [esp + 0x22]
mov ebp, dword [esp + 0xb8]
mov esi, dword [ebp + 4]
mov esi, dword [esi]
mov esi, dword [esi + 0x18]
test esi, esi
je 0x596326
mov dword [esp + 0x88], ecx
mov edx, eax
mov eax, dword [esp + 0x3c]
mov edi, edx
cmp esi, 0xffffffff
je 0x595329
cdq
idiv esi
jmp 0x59532b
xor edx, edx
test edx, edx
je 0x5953da
lea eax, [0x5c6b80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x9c], eax
mov ecx, dword [esp + 0x3c]
mov dword [esp], ecx
call sym.runtime.convT32
mov eax, dword [esp + 4]
lea ecx, [0x5c92c0]
mov edx, dword [esp + 0x9c]
mov dword [edx], ecx
mov ecx, dword [0x7a14d8]
test ecx, ecx
je 0x595382
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 4]
mov dword [edi + 4], ecx
mov dword [edx + 4], eax
mov eax, dword [esp + 0xb8]
inc dword [eax + 0x90]
mov ecx, dword [eax + 0x80]
mov ebx, dword [ecx]
lea ebp, [0x5f47bb]
mov dword [esp], ebp
mov dword [esp + 4], 0x17
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
mov edx, ecx
call ebx
mov ecx, dword [esp + 0x88]
mov ebx, dword [esp + 0x38]
mov ebp, dword [esp + 0xb8]
movzx edi, word [esp + 0x22]
mov eax, dword [esp + 0x3c]
mov esi, eax
sub eax, ebx
mov dword [esp + 0x2c], eax
test eax, eax
je 0x595471
mov edx, dword [esp + 0xc0]
mov eax, dword [edx]
nop
call eax
mov eax, dword [esp]
test byte [eax], al
mov ecx, dword [0x7a14d8]
mov ebx, dword [esp + 0x88]
mov ebp, dword [ebx + 4]
test ecx, ecx
je 0x595429
call sym.runtime.gcWriteBarrier4
mov dword [edi], ebp
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov dword [edi + 8], eax
mov ecx, dword [ebx + 4]
mov dword [edi + 0xc], ecx
mov dword [eax + 4], ebp
mov dword [ebx + 4], eax
mov edx, dword [esp + 0x2c]
mov ebp, edx
sar edx, 0x1f
mov esi, dword [ebx + 0x6c]
mov ebx, dword [ebx + 0x68]
mov dword [eax + 0x68], ebx
mov dword [eax + 0x6c], esi
mov word [eax + 0x74], 0x1822
mov byte [eax + 0xe], 4
mov dword [eax + 0x14], ebp
mov dword [eax + 0x18], edx
mov dword [eax + 0x70], ebp
mov ebx, dword [esp + 0x38]
mov ebp, dword [esp + 0xb8]
mov esi, dword [esp + 0x3c]
movzx edi, word [esp + 0x22]
mov ecx, eax
mov eax, dword [esp + 0x2c]
test esi, esi
je 0x59548b
mov edx, dword [ecx + 0x6c]
nop
test edx, edx
jne 0x595482
mov edx, 2
and edx, 0xfffffff3
or edx, 4
mov dword [ecx + 0x6c], edx
mov dword [esp + 0x88], ecx
mov edx, dword [esp + 0xbc]
mov eax, dword [edx + 0x34]
test eax, eax
je 0x5954b3
lea esi, [0x5d78a0]
cmp dword [eax], esi
jne 0x5954af
mov eax, dword [eax + 4]
jmp 0x5954b5
xor eax, eax
jmp 0x5954b5
xor eax, eax
mov eax, dword [eax + 0x14]
mov eax, dword [eax + 0x1c]
test byte [eax], al
add eax, 0xc
mov dword [esp], eax
call sym.sync_atomic.LoadUint32
mov eax, dword [esp + 4]
test eax, 0x10
je 0x595a04
mov edx, dword [esp + 0xc0]
mov eax, dword [edx]
call eax
mov eax, dword [esp]
test byte [eax], al
mov ecx, dword [0x7a14d8]
mov ebx, dword [esp + 0x88]
mov ebp, dword [ebx + 4]
test ecx, ecx
je 0x595511
call sym.runtime.gcWriteBarrier4
mov dword [edi], ebp
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov dword [edi + 8], eax
mov ecx, dword [ebx + 4]
mov dword [edi + 0xc], ecx
mov dword [esp + 0x88], eax
mov dword [eax + 4], ebp
mov dword [ebx + 4], eax
mov ecx, dword [ebx + 0x6c]
mov ebx, dword [ebx + 0x68]
mov dword [eax + 0x68], ebx
mov dword [eax + 0x6c], ecx
mov word [eax + 0x74], 0x1a15
mov byte [eax + 0xe], 3
movzx ecx, word [esp + 0x22]
mov word [eax + 8], cx
mov ecx, dword [esp + 0xb8]
mov ebx, dword [ecx + 4]
mov ebx, dword [ebx]
mov ebx, dword [ebx + 0x14]
mov ebp, ebx
shl ebx, 2
mov dword [eax + 0x14], ebx
mov ebx, ebp
shr ebp, 0x1e
sar ebx, 0x1f
shl ebx, 2
or ebx, ebp
mov dword [eax + 0x18], ebx
mov byte [eax + 0x3a], 7
movzx ebx, word [esp + 0x26]
mov word [eax + 0x34], bx
mov ebp, dword [ecx + 4]
mov ebp, dword [ebp]
cmp byte [ebp + 8], 4
jne 0x595583
mov word [eax + 0x74], 0x1a04
mov edx, dword [esp + 0xc0]
mov eax, dword [edx]
nop
call eax
mov eax, dword [esp]
test byte [eax], al
mov ecx, dword [0x7a14d8]
mov ebx, dword [esp + 0x88]
mov ebp, dword [ebx + 4]
test ecx, ecx
je 0x5955be
call sym.runtime.gcWriteBarrier4
mov dword [edi], ebp
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov dword [edi + 8], eax
mov ecx, dword [ebx + 4]
mov dword [edi + 0xc], ecx
mov dword [esp + 0x88], eax
mov dword [eax + 4], ebp
mov dword [ebx + 4], eax
mov ecx, dword [ebx + 0x6c]
mov ebx, dword [ebx + 0x68]
mov dword [eax + 0x68], ebx
mov dword [eax + 0x6c], ecx
mov word [eax + 0x74], 0x1b75
mov byte [eax + 0xe], 7
movzx ecx, word [esp + 0x26]
mov word [eax + 8], cx
mov byte [eax + 0x3a], 7
mov word [eax + 0x34], cx
mov ebx, dword [esp + 0xb8]
mov ebp, dword [ebx + 4]
mov ebp, dword [ebp]
cmp byte [ebp + 8], 4
jne 0x59560b
mov word [eax + 0x74], 0x1b74
mov edx, dword [esp + 0xc0]
mov eax, dword [edx]
nop
call eax
mov eax, dword [esp]
test byte [eax], al
mov ecx, dword [0x7a14d8]
mov ebx, dword [esp + 0x88]
mov ebp, dword [ebx + 4]
test ecx, ecx
je 0x595646
call sym.runtime.gcWriteBarrier4
mov dword [edi], ebp
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov dword [edi + 8], eax
mov ecx, dword [ebx + 4]
mov dword [edi + 0xc], ecx
mov dword [esp + 0x84], eax
mov dword [eax + 4], ebp
mov dword [ebx + 4], eax
mov ecx, dword [ebx + 0x6c]
mov ebx, dword [ebx + 0x68]
mov dword [eax + 0x68], ebx
mov dword [eax + 0x6c], ecx
mov word [eax + 0x74], 0x1985
mov byte [eax + 0x3a], 1
mov edx, dword [esp + 0xc0]
mov ecx, dword [edx]
nop
call ecx
mov eax, dword [esp]
test byte [eax], al
mov ecx, dword [0x7a14d8]
mov ebx, dword [esp + 0x84]
mov ebp, dword [ebx + 4]
test ecx, ecx
je 0x5956a4
call sym.runtime.gcWriteBarrier4
mov dword [edi], ebp
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov dword [edi + 8], eax
mov ecx, dword [ebx + 4]
mov dword [edi + 0xc], ecx
mov dword [eax + 4], ebp
mov dword [ebx + 4], eax
mov ecx, dword [ebx + 0x6c]
mov ebp, dword [ebx + 0x68]
mov dword [eax + 0x68], ebp
mov dword [eax + 0x6c], ecx
mov word [eax + 0x74], 7
mov ecx, eax
jmp 0x5956c2
mov eax, ebp
mov ebp, dword [eax + 4]
test ebp, ebp
jne 0x5956c0
mov dword [esp + 0xa0], ecx
mov dword [esp + 0x8c], eax
mov edx, dword [esp + 0xc0]
mov eax, dword [edx]
nop
call eax
mov eax, dword [esp]
test byte [eax], al
mov ecx, dword [0x7a14d8]
mov ebx, dword [esp + 0x8c]
mov ebp, dword [ebx + 4]
test ecx, ecx
je 0x595712
call sym.runtime.gcWriteBarrier4
mov dword [edi], ebp
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov dword [edi + 8], eax
mov ecx, dword [ebx + 4]
mov dword [edi + 0xc], ecx
mov dword [eax + 4], ebp
mov dword [ebx + 4], eax
mov ecx, dword [esp + 0x3c]
mov ebp, ecx
sar ecx, 0x1f
mov esi, dword [ebx + 0x6c]
mov ebx, dword [ebx + 0x68]
mov dword [eax + 0x68], ebx
mov dword [eax + 0x6c], esi
mov word [eax + 0x74], 0x19c5
mov byte [eax + 0xe], 3
mov word [eax + 8], 0x814
mov ebx, dword [esp + 0xb8]
mov esi, dword [ebx + 4]
mov esi, dword [esi]
mov esi, dword [esi + 0x18]
mov edi, esi
sar esi, 0x1f
add edi, ebp
mov dword [eax + 0x14], edi
adc ecx, esi
mov dword [eax + 0x18], ecx
mov byte [eax + 0x3a], 7
movzx ecx, word [esp + 0x24]
mov word [eax + 0x34], cx
mov esi, dword [ebx + 4]
mov esi, dword [esi]
cmp byte [esi + 8], 4
jne 0x595779
mov word [eax + 0x74], 0x19c4
nop
mov esi, dword [esp + 0x84]
cmp byte [esi + 0x3a], 1
jne 0x59630e
lea edi, [0x5de540]
mov dword [esi + 0x4c], edi
mov edx, dword [0x7a14d8]
test edx, edx
je 0x5957ab
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov edx, dword [esi + 0x50]
mov dword [edi + 4], edx
mov dword [esp + 0x88], eax
mov dword [esi + 0x50], eax
mov edx, dword [esp + 0xc0]
mov ecx, dword [edx]
nop
call ecx
mov eax, dword [esp]
test byte [eax], al
mov ecx, dword [0x7a14d8]
mov ebx, dword [esp + 0x88]
mov ebp, dword [ebx + 4]
test ecx, ecx
je 0x5957f0
call sym.runtime.gcWriteBarrier4
mov dword [edi], ebp
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov dword [edi + 8], eax
mov ecx, dword [ebx + 4]
mov dword [edi + 0xc], ecx
mov dword [esp + 0x88], eax
mov dword [eax + 4], ebp
mov dword [ebx + 4], eax
mov ecx, dword [ebx + 0x6c]
mov ebx, dword [ebx + 0x68]
mov dword [eax + 0x68], ebx
mov dword [eax + 0x6c], ecx
mov word [eax + 0x74], 0x189c
mov byte [eax + 0xe], 3
movzx ecx, word [esp + 0x26]
mov word [eax + 8], cx
mov dword [eax + 0x14], 0
mov dword [eax + 0x18], 0
mov byte [eax + 0x3a], 7
movzx ebx, word [esp + 0x24]
mov word [eax + 0x34], bx
mov ebx, dword [esp + 0xb8]
mov ebp, dword [ebx + 4]
mov ebp, dword [ebp]
cmp byte [ebp + 8], 4
jne 0x595850
mov word [eax + 0x74], 0x1899
mov edx, dword [esp + 0xc0]
mov eax, dword [edx]
nop
call eax
mov eax, dword [esp]
test byte [eax], al
mov ecx, dword [0x7a14d8]
mov ebx, dword [esp + 0x88]
mov ebp, dword [ebx + 4]
test ecx, ecx
je 0x59588b
call sym.runtime.gcWriteBarrier4
mov dword [edi], ebp
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov dword [edi + 8], eax
mov ecx, dword [ebx + 4]
mov dword [edi + 0xc], ecx
mov dword [eax + 4], ebp
mov dword [ebx + 4], eax
mov ecx, dword [ebx + 0x6c]
mov ebx, dword [ebx + 0x68]
mov dword [eax + 0x68], ebx
mov dword [eax + 0x6c], ecx
mov word [eax + 0x74], 0x1985
mov byte [eax + 0x3a], 1
nop
lea ecx, [0x5de540]
mov dword [eax + 0x4c], ecx
mov ebx, dword [0x7a14d8]
test ebx, ebx
jne 0x5958c4
mov ebx, dword [esp + 0xa0]
jmp 0x5958d8
call sym.runtime.gcWriteBarrier2
mov ebx, dword [esp + 0xa0]
mov dword [edi], ebx
mov ebp, dword [eax + 0x50]
mov dword [edi + 4], ebp
mov dword [esp + 0x88], eax
mov dword [eax + 0x50], ebx
mov edx, dword [esp + 0xc0]
mov ecx, dword [edx]
nop
call ecx
mov eax, dword [esp]
test byte [eax], al
mov ecx, dword [0x7a14d8]
mov ebx, dword [esp + 0x88]
mov ebp, dword [ebx + 4]
test ecx, ecx
je 0x59591d
call sym.runtime.gcWriteBarrier4
mov dword [edi], ebp
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov dword [edi + 8], eax
mov ecx, dword [ebx + 4]
mov dword [edi + 0xc], ecx
mov dword [esp + 0x88], eax
mov dword [eax + 4], ebp
mov dword [ebx + 4], eax
mov ecx, dword [ebx + 0x6c]
mov ebx, dword [ebx + 0x68]
mov dword [eax + 0x68], ebx
mov dword [eax + 0x6c], ecx
mov word [eax + 0x74], 0x1a15
mov byte [eax + 0xe], 7
mov word [eax + 8], 0x814
mov byte [eax + 0x3a], 3
movzx ecx, word [esp + 0x26]
mov word [eax + 0x34], cx
mov dword [eax + 0x40], 0
mov dword [eax + 0x44], 0
mov ecx, dword [esp + 0xb8]
mov ebx, dword [ecx + 4]
mov ebx, dword [ebx]
cmp byte [ebx + 8], 4
jne 0x595979
mov word [eax + 0x74], 0x1a04
mov edx, dword [esp + 0xc0]
mov eax, dword [edx]
nop
call eax
mov eax, dword [esp]
test byte [eax], al
mov ecx, dword [0x7a14d8]
mov ebx, dword [esp + 0x88]
mov ebp, dword [ebx + 4]
test ecx, ecx
je 0x5959b4
call sym.runtime.gcWriteBarrier4
mov dword [edi], ebp
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov dword [edi + 8], eax
mov ecx, dword [ebx + 4]
mov dword [edi + 0xc], ecx
mov dword [eax + 4], ebp
mov dword [ebx + 4], eax
mov ecx, dword [ebx + 0x6c]
mov ebx, dword [ebx + 0x68]
mov dword [eax + 0x68], ebx
mov dword [eax + 0x6c], ecx
mov word [eax + 0x74], 6
mov byte [eax + 0x3a], 1
nop
lea ecx, [0x5de540]
mov dword [eax + 0x4c], ecx
mov ebx, dword [0x7a14d8]
test ebx, ebx
jne 0x5959ed
mov ebx, dword [esp + 0xa0]
jmp 0x595a01
call sym.runtime.gcWriteBarrier2
mov ebx, dword [esp + 0xa0]
mov dword [edi], ebx
mov ebp, dword [eax + 0x50]
mov dword [edi + 4], ebp
mov dword [eax + 0x50], ebx
mov ecx, dword [esp + 0xbc]
mov ebx, dword [ecx + 0x34]
test ebx, ebx
je 0x595a25
lea ebp, [0x5d78a0]
cmp dword [ebx], ebp
jne 0x595a21
mov ebx, dword [ebx + 4]
jmp 0x595a2d
xor ebx, ebx
jmp 0x595a2d
lea ebp, [0x5d78a0]
xor ebx, ebx
mov ebx, dword [ebx + 0x14]
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0xb8]
xor esi, esi
jmp 0x595a53
mov ecx, dword [ecx + 4]
mov ebx, ecx
mov esi, ebp
mov ecx, dword [esp + 0xbc]
lea ebp, [0x5d78a0]
test ebx, ebx
je 0x59619f
mov dword [esp + 0x88], ebx
mov dword [esp + 0x34], esi
mov edi, dword [edx + 4]
mov edi, dword [edi]
movzx ebp, byte [ebx + 0xf]
mov edi, dword [edi + 0x18]
mov dword [esp + 0x28], edi
xchg ebp, eax
cmp al, 3
xchg ebp, eax
jne 0x595ac4
mov ebp, dword [ebx + 0x14]
mov ecx, dword [ebx + 0x18]
mov dword [esp + 0x48], ecx
sar esi, 0x1f
sar eax, 0x1f
mov ecx, dword [esp + 0x34]
mov ebx, dword [esp + 0x38]
sub ecx, ebx
sbb esi, eax
add ebp, ecx
mov ecx, dword [esp + 0x88]
mov dword [ecx + 0x14], ebp
mov ebp, dword [esp + 0x48]
adc esi, ebp
mov dword [ecx + 0x18], esi
mov eax, ebx
mov ecx, dword [esp + 0xbc]
mov ebx, dword [esp + 0x88]
mov esi, dword [esp + 0x34]
jmp 0x595b12
xchg ebp, eax
cmp al, 4
xchg ebp, eax
jne 0x595b12
mov ebp, dword [ebx + 0x14]
mov ecx, dword [ebx + 0x18]
mov dword [esp + 0x48], ecx
sar esi, 0x1f
sar edi, 0x1f
mov ecx, dword [esp + 0x34]
mov ebx, dword [esp + 0x28]
add ecx, ebx
adc esi, edi
add ebp, ecx
mov ecx, dword [esp + 0x88]
mov dword [ecx + 0x14], ebp
mov ebp, dword [esp + 0x48]
adc esi, ebp
mov dword [ecx + 0x18], esi
mov ecx, dword [esp + 0xbc]
mov ebx, dword [esp + 0x88]
mov esi, dword [esp + 0x34]
mov edi, dword [esp + 0x28]
mov ebp, dword [ebx + 0x28]
mov ecx, dword [ebx + 0x2c]
mov dword [esp + 0x40], eax
xor eax, eax
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x40]
jmp 0x5961bf
lea ebx, [ebp + edx*4]
mov edx, dword [esp + 0xb8]
mov edi, dword [esp + 0x28]
jmp 0x595b3e
xor ebx, ebx
test ebx, ebx
je 0x595b49
xor ebx, ebx
jmp 0x5961ec
mov ecx, dword [esp + 0x88]
movzx ebx, byte [ecx + 0x3b]
cmp bl, 3
jne 0x595b89
mov ebx, dword [ecx + 0x40]
mov ebp, dword [ecx + 0x44]
mov dword [esp + 0x48], ebp
mov edi, esi
sar esi, 0x1f
sar eax, 0x1f
mov ebp, dword [esp + 0x38]
sub edi, ebp
sbb esi, eax
add ebx, edi
mov dword [ecx + 0x40], ebx
mov ebx, dword [esp + 0x48]
adc esi, ebx
mov dword [ecx + 0x44], esi
mov eax, ebp
mov ebp, dword [esp + 0x34]
jmp 0x595bc3
cmp bl, 4
jne 0x595bc1
mov ebx, dword [ecx + 0x40]
mov ebp, dword [ecx + 0x44]
mov dword [esp + 0x48], ebp
sar esi, 0x1f
sar edi, 0x1f
mov ebp, dword [esp + 0x34]
mov ecx, dword [esp + 0x28]
add ecx, ebp
adc esi, edi
add ebx, ecx
mov ecx, dword [esp + 0x88]
mov dword [ecx + 0x40], ebx
mov ebx, dword [esp + 0x48]
adc esi, ebx
mov dword [ecx + 0x44], esi
jmp 0x595bc3
mov ebp, esi
movzx ebx, word [ecx + 0x74]
cmp bx, 0x1aad
jg 0x595f17
cmp bx, 0x1aa9
jg 0x595ed6
cmp bx, 0xa
jne 0x595eab
mov ebx, dword [esp + 0x3c]
cmp ebp, ebx
jne 0x595bf6
test ebx, ebx
jmp 0x595c90
lea eax, [0x5c6b80]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
lea ecx, [0x5e2920]
mov dword [eax], ecx
mov edx, dword [0x7a14d8]
test edx, edx
jne 0x595c23
mov ebx, dword [esp + 0xbc]
jmp 0x595c31
call sym.runtime.gcWriteBarrier1
mov ebx, dword [esp + 0xbc]
mov dword [edi], ebx
mov dword [eax + 4], ebx
mov ecx, dword [esp + 0xb8]
inc dword [ecx + 0x90]
mov edx, dword [ecx + 0x80]
mov ebp, dword [edx]
lea esi, [0x5f47d2]
mov dword [esp], esi
mov dword [esp + 4], 0x17
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call ebp
mov eax, dword [esp + 0x3c]
test eax, eax
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x88]
mov edx, dword [esp + 0xb8]
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x34]
je 0x595e95
lea esi, [ecx + 0x34]
mov dword [esp + 0x98], esi
lea edi, [esp + 0x58]
call fcn.00468740
mov ecx, dword [0x7a14d8]
test ecx, ecx
jne 0x595cbb
mov ecx, dword [esp + 0x2c]
test ecx, ecx
jmp 0x595cf1
lea eax, [0x5da860]
mov dword [esp], eax
mov ecx, dword [esp + 0x98]
mov dword [esp + 4], ecx
call sym.runtime.wbZero
mov eax, dword [esp + 0x2c]
test eax, eax
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0xb8]
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x34]
mov edi, dword [esp + 0x98]
mov esi, eax
mov eax, 0
call fcn.00468278
jne 0x595d14
test esi, esi
mov eax, dword [esp + 0x88]
jmp 0x595da1
mov eax, dword [esp + 0x88]
mov word [eax + 0x74], 0x1822
mov byte [eax + 0xe], 4
sub esi, ebx
mov dword [eax + 0x14], esi
mov ebp, esi
sar esi, 0x1f
mov dword [eax + 0x18], esi
mov dword [eax + 0x70], ebp
mov edx, dword [esp + 0xc0]
mov ebp, dword [edx]
nop
call ebp
mov eax, dword [esp]
test byte [eax], al
mov ecx, dword [0x7a14d8]
mov ebx, dword [esp + 0x88]
mov ebp, dword [ebx + 4]
test ecx, ecx
jne 0x595d62
mov ecx, dword [esp + 0x38]
test ecx, ecx
jmp 0x595d7e
call sym.runtime.gcWriteBarrier4
mov dword [edi], ebp
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov dword [edi + 8], eax
mov ecx, dword [ebx + 4]
mov dword [edi + 0xc], ecx
mov ecx, dword [esp + 0x38]
test ecx, ecx
mov dword [eax + 4], ebp
mov dword [ebx + 4], eax
mov ebp, dword [ebx + 0x6c]
mov edx, dword [ebx + 0x68]
mov dword [eax + 0x68], edx
mov dword [eax + 0x6c], ebp
mov edx, dword [esp + 0xb8]
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x34]
mov esi, ecx
jle 0x595e27
mov dword [esp + 0x94], eax
mov word [eax + 0x74], 0x1aad
mov byte [eax + 0x3a], 7
mov word [eax + 0x34], 0x815
xchg esi, ebx
neg ebx
xchg esi, ebx
mov dword [eax + 0x70], esi
mov edx, dword [esp + 0xc0]
mov ebx, dword [edx]
nop
call ebx
mov eax, dword [esp]
test byte [eax], al
mov ecx, dword [0x7a14d8]
mov ebx, dword [esp + 0x94]
mov ebp, dword [ebx + 4]
test ecx, ecx
je 0x595e02
call sym.runtime.gcWriteBarrier4
mov dword [edi], ebp
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov dword [edi + 8], eax
mov ecx, dword [ebx + 4]
mov dword [edi + 0xc], ecx
mov dword [eax + 4], ebp
mov dword [ebx + 4], eax
mov ecx, dword [ebx + 0x6c]
mov ebx, dword [ebx + 0x68]
mov dword [eax + 0x68], ebx
mov dword [eax + 0x6c], ecx
mov edx, dword [esp + 0xb8]
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x34]
mov esi, dword [esp + 0x38]
mov word [eax + 0x74], 0xa
mov ecx, dword [0x7a14d8]
lea edi, [eax + 0x34]
test ecx, ecx
je 0x595e83
mov dword [esp + 0x90], eax
mov dword [esp + 0x98], edi
lea eax, [0x5da860]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x58]
mov dword [esp + 8], eax
call sym.runtime.wbMove
mov eax, dword [esp + 0x90]
mov edx, dword [esp + 0xb8]
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x34]
mov esi, dword [esp + 0x38]
mov edi, dword [esp + 0x98]
lea esi, [esp + 0x58]
call fcn.00468740
mov dword [eax + 0x70], ebx
mov ecx, eax
mov eax, dword [esp + 0x38]
mov esi, dword [ecx + 0x48]
test esi, esi
je 0x595a3f
mov word [ecx + 0x74], 6
jmp 0x595a3f
cmp bx, 0x1822
jne 0x595eca
mov ebx, dword [ecx + 0x14]
mov dword [ecx + 0x70], ebx
mov ebx, dword [ecx + 0x14]
lea esi, [ebp + ebx]
mov ebx, dword [esp + 0x3c]
mov ebp, esi
jmp 0x595a3f
cmp bx, 0x1aa9
je 0x595eed
jmp 0x595fa5
cmp bx, 0x1aab
jg 0x595ee6
cmp bx, 0x1aaa
je 0x595f02
jmp 0x595f25
cmp bx, 0x1aac
jne 0x595f02
mov dword [ecx + 0x70], 0xfffffffc
lea esi, [ebp - 4]
mov ebx, dword [esp + 0x3c]
mov ebp, esi
jmp 0x595a3f
mov dword [ecx + 0x70], 0xfffffff8
lea esi, [ebp - 8]
mov ebx, dword [esp + 0x3c]
mov ebp, esi
jmp 0x595a3f
cmp bx, 0x1adc
jg 0x595f4a
cmp bx, 0x1aae
jne 0x595f3a
mov dword [ecx + 0x70], 0xfffffffe
lea esi, [ebp - 2]
mov ebx, dword [esp + 0x3c]
mov ebp, esi
jmp 0x595a3f
cmp bx, 0x1adb
je 0x595f58
cmp bx, 0x1adc
je 0x595f74
jmp 0x595fa5
cmp bx, 0x1ade
jg 0x595f6d
cmp bx, 0x1add
je 0x595f90
mov dword [ecx + 0x70], 4
lea esi, [ebp + 4]
mov ebx, dword [esp + 0x3c]
mov ebp, esi
jmp 0x595a3f
cmp bx, 0x1adf
jne 0x595f89
mov dword [ecx + 0x70], 8
lea esi, [ebp + 8]
mov ebx, dword [esp + 0x3c]
mov ebp, esi
jmp 0x595a3f
cmp bx, 0x1ae0
jne 0x595fa5
mov dword [ecx + 0x70], 2
lea esi, [ebp + 2]
mov ebx, dword [esp + 0x3c]
mov ebp, esi
jmp 0x595a3f
cmp byte [ecx + 0x3a], 7
jne 0x59618f
cmp word [ecx + 0x34], 0x814
jne 0x59618f
cmp bx, 0x1899
je 0x59618f
cmp bx, 0x189c
je 0x59618f
mov ebx, dword [esp + 0xbc]
mov esi, dword [ebx + 0x34]
nop
test esi, esi
je 0x595ff5
mov edi, ebx
lea ebx, [0x5d78a0]
cmp dword [esi], ebx
jne 0x595ff1
mov esi, dword [esi + 4]
jmp 0x596004
xor esi, esi
jmp 0x596004
lea ebx, [0x5d78a0]
mov edi, dword [esp + 0xbc]
xor esi, esi
movzx ebx, byte [esi + 0xd]
test bl, 2
jne 0x596196
or ebx, 2
mov byte [esi + 0xd], bl
movzx ebx, byte [edx + 0xc]
test bl, bl
jne 0x59602e
movzx ebx, byte [edx + 0x96]
test bl, bl
jne 0x596196
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa8], 0
mov dword [esp + 0xac], 0
mov dword [esp + 0xb0], 0
mov eax, dword [edi]
mov ecx, dword [edi + 4]
mov dword [esp], eax
mov dword [esp + 4], ecx
call sym.runtime.convTstring
mov eax, dword [esp + 8]
lea ecx, [0x5c9180]
mov dword [esp + 0xa4], ecx
mov dword [esp + 0xa8], eax
lea eax, [0x5de540]
mov dword [esp + 0xac], eax
mov edx, dword [esp + 0x88]
mov dword [esp + 0xb0], edx
mov ebx, dword [esp + 0xb8]
mov dword [esp], ebx
lea ebp, [0x5f2b45]
mov dword [esp + 4], ebp
mov dword [esp + 8], 0x14
lea esi, [esp + 0xa4]
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], 2
mov dword [esp + 0x14], 2
call sym.cmd_internal_obj._Link_.Logf
mov eax, dword [esp + 0xb8]
movzx ecx, byte [eax + 0x96]
test cl, cl
jne 0x596170
nop
inc dword [eax + 0x90]
mov edx, dword [eax + 0x80]
mov ecx, dword [edx]
lea ebx, [0x5fa435]
mov dword [esp], ebx
mov dword [esp + 4], 0x24
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
call ecx
mov eax, dword [esp + 0xb8]
mov edx, dword [eax + 0x84]
mov ecx, dword [edx]
call ecx
lea eax, [0x5ed2b7]
mov dword [esp], eax
mov dword [esp + 4], 0xb
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
call sym.log.Fatalf
mov eax, dword [esp + 0xb8]
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x88]
mov edx, dword [esp + 0xb8]
mov ebp, dword [esp + 0x34]
mov edi, dword [esp + 0xbc]
jmp 0x596196
mov edi, dword [esp + 0xbc]
mov ebx, dword [esp + 0x3c]
jmp 0x595a3f
add esp, 0xb4
ret
lea edx, [ebx + 1]
mov ebx, dword [esp + 0x88]
mov edi, dword [esp + 0x28]
mov dword [esp + 0x30], edx
mov edx, dword [esp + 0xb8]
mov ebx, dword [esp + 0x30]
cmp ebx, ecx
jge 0x595b3c
lea edx, [ebx + ebx*8]
lea edi, [ebp + edx*4 + 0x20]
movzx edi, byte [edi]
xchg edi, eax
test al, al
xchg edi, eax
jne 0x5961a6
jmp 0x595b2b
inc ebx
mov edx, dword [esp + 0xb8]
mov edi, dword [esp + 0x28]
cmp ebx, ecx
jge 0x596211
lea edx, [ebx + ebx*8]
lea edi, [ebp + edx*4 + 0x20]
movzx edi, byte [edi]
xchg edi, eax
test al, al
xchg edi, eax
jne 0x5961e0
lea ebx, [ebp + edx*4]
mov edx, dword [esp + 0xb8]
mov edi, dword [esp + 0x28]
jmp 0x596213
xor ebx, ebx
movzx ebx, byte [ebx + 7]
cmp bl, 3
jne 0x596223
xor ebx, ebx
jmp 0x5962aa
cmp bl, 4
jne 0x595b49
xor ebx, ebx
jmp 0x59623c
inc ebx
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0xb8]
cmp ebx, ecx
jge 0x59625f
lea edx, [ebx + ebx*8]
lea eax, [ebp + edx*4 + 0x20]
movzx eax, byte [eax]
test al, al
jne 0x596230
lea ecx, [ebp + edx*4]
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0xb8]
jmp 0x596261
xor ecx, ecx
mov dword [esp + 0x4c], ecx
mov ebx, dword [ecx + 0xc]
mov ebp, dword [ecx + 0x10]
mov dword [esp + 0x48], ebp
sar esi, 0x1f
sar edi, 0x1f
mov ebp, dword [esp + 0x34]
mov ecx, dword [esp + 0x28]
add ebp, ecx
adc esi, edi
add ebx, ebp
mov ebp, dword [esp + 0x4c]
mov dword [ebp + 0xc], ebx
mov ebx, dword [esp + 0x48]
adc esi, ebx
mov dword [ebp + 0x10], esi
mov esi, dword [esp + 0x34]
mov edi, ecx
jmp 0x595b49
inc ebx
mov edx, dword [esp + 0xb8]
mov edi, dword [esp + 0x28]
cmp ebx, ecx
jge 0x5962cf
lea edx, [ebx + ebx*8]
lea edi, [ebp + edx*4 + 0x20]
movzx edi, byte [edi]
xchg edi, eax
test al, al
xchg edi, eax
jne 0x59629e
lea ecx, [ebp + edx*4]
mov edx, dword [esp + 0xb8]
mov edi, dword [esp + 0x28]
jmp 0x5962d1
xor ecx, ecx
mov dword [esp + 0x50], ecx
mov ebx, dword [ecx + 0xc]
mov ebp, dword [ecx + 0x10]
mov dword [esp + 0x48], ebp
sar esi, 0x1f
sar eax, 0x1f
mov ebp, dword [esp + 0x34]
mov ecx, dword [esp + 0x38]
sub ebp, ecx
sbb esi, eax
add ebx, ebp
mov ebp, dword [esp + 0x50]
mov dword [ebp + 0xc], ebx
mov ebx, dword [esp + 0x48]
adc esi, ebx
mov dword [ebp + 0x10], esi
mov eax, ecx
mov esi, dword [esp + 0x34]
jmp 0x595b49
lea eax, [0x5c9180]
mov dword [esp], eax
lea eax, [0x63bba8]
mov dword [esp + 4], eax
call sym.runtime.gopanic
call sym.runtime.panicdivide
mov ebp, dword [ebp + 4]
lea edi, [0x5d78a0]
test ebp, ebp
je 0x596546
movzx edi, word [ebp + 0x74]
cmp di, 1
jne 0x596526
mov edi, dword [ebp + 0x48]
test edi, edi
je 0x59651c
mov dword [esp + 0x7c], ebp
mov dword [esp + 0x78], edi
mov esi, dword [edi + 4]
mov eax, dword [edi]
cmp esi, 0x11
je 0x5963fe
cmp esi, 0x12
je 0x5963bf
cmp esi, 0x13
jne 0x596466
mov dword [esp], eax
lea eax, [0x5f24ba]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x13
call sym.runtime.memequal
movzx eax, byte [esp + 0xc]
test al, al
jne 0x596421
mov ecx, dword [esp + 0xb8]
mov edx, dword [esp + 0xa0]
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x7c]
mov edi, dword [esp + 0x78]
jmp 0x596466
mov dword [esp], eax
lea eax, [0x5f1c0e]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x12
call sym.runtime.memequal
movzx eax, byte [esp + 0xc]
test al, al
jne 0x596421
mov ecx, dword [esp + 0xb8]
mov edx, dword [esp + 0xa0]
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x7c]
mov edi, dword [esp + 0x78]
jmp 0x596466
mov dword [esp], eax
lea eax, [0x5f137a]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x11
call sym.runtime.memequal
movzx eax, byte [esp + 0xc]
test al, al
je 0x59644c
mov eax, dword [esp + 0xbc]
mov ecx, dword [esp + 0xb8]
mov edx, dword [esp + 0xa0]
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0x48]
mov edi, 1
jmp 0x59651e
mov ecx, dword [esp + 0xb8]
mov edx, dword [esp + 0xa0]
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x7c]
mov edi, dword [esp + 0x78]
cmp dword [edi + 4], 0x12
jge 0x596470
xor eax, eax
jmp 0x5964ab
mov eax, dword [edi]
mov dword [esp], eax
lea eax, [0x5f1c20]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x12
call sym.runtime.memequal
movzx eax, byte [esp + 0xc]
mov ecx, dword [esp + 0xb8]
mov edx, dword [esp + 0xa0]
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x7c]
mov edi, dword [esp + 0x78]
test al, al
je 0x5964b6
mov eax, 1
jmp 0x5964f7
cmp dword [edi + 4], 0x12
jge 0x5964c0
xor eax, eax
jmp 0x5964f7
mov eax, dword [edi]
mov dword [esp], eax
lea eax, [0x5f1c32]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x12
call sym.runtime.memequal
movzx eax, byte [esp + 0xc]
mov ecx, dword [esp + 0xb8]
mov edx, dword [esp + 0xa0]
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x7c]
test al, al
je 0x59650d
mov eax, dword [esp + 0xbc]
mov esi, dword [esp + 0x48]
mov edi, 1
jmp 0x59651e
mov eax, dword [esp + 0xbc]
mov esi, dword [esp + 0x48]
xor edi, edi
jmp 0x59651e
xor edi, edi
xchg edi, eax
test al, al
xchg edi, eax
jne 0x596533
jmp 0x59653e
add edi, 0xfffffffe
cmp di, 1
ja 0x59632b
cmp ebx, 0x78
jl 0x59632b
jmp 0x596542
xor ebp, ebp
jmp 0x59654b
xor ebp, ebp
jmp 0x59654b
mov ebp, 1
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x59658b
mov eax, dword [edx + 0x1c]
test byte [eax], al
add eax, 0xc
mov dword [esp], eax
mov dword [esp + 4], 4
mov byte [esp + 8], 1
call sym.cmd_internal_obj._Attribute_.Set
mov eax, dword [esp + 0xbc]
mov ecx, dword [esp + 0xb8]
mov edx, dword [esp + 0xa0]
mov ebx, dword [esp + 0x3c]
mov esi, dword [esp + 0x48]
mov ebp, edx
lea edi, [0x5d78a0]
jmp 0x595102
mov dword [esp], ecx
mov dword [esp + 4], esi
lea eax, [0x5c9ec0]
mov dword [esp + 8], eax
call sym.runtime.panicdottypeE
nop
call sym.runtime.morestack_noctxt
jmp sym.cmd_internal_obj_x86.preprocess