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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx]
ja 0x43d63f
xor edi, edi
mov eax, 0x28
call fcn.0044c660
jmp fcn.0043d620
sub esp, 0x7c
mov dword [esp], 0
call fcn.0043ade0
mov ecx, dword [esp + 0x8c]
mov dword [esp + 0x68], eax
cmp dword [esp + 0x80], 0xffffffff
jne 0x43d671
cmp dword [esp + 0x84], 0xffffffff
je 0x43e0c3
mov dword [esp + 0x70], 0
lea eax, [esp + 0x30]
mov dword [esp], eax
mov eax, 0x24
mov dword [esp + 4], eax
call fcn.0044e5d0
mov ecx, dword [esp + 0x8c]
mov eax, dword [esp + 0x80]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x84]
mov dword [esp + 0x40], eax
mov byte [esp + 0x5f], 0
mov byte [esp + 0x5e], 0
cmp dword [esp + 0x94], 0
jne 0x43d6cd
cmp dword [esp + 0x9c], 0
je 0x43e0b9
xor eax, eax
mov byte [esp + 0x5d], al
mov edx, dword [ecx + 0x10]
mov eax, dword [ecx + 0xc]
mov ecx, eax
cmp ecx, 0
mov dword [esp + 0x1c], ecx
je 0x43d6f0
mov eax, dword [ecx + 8]
cmp eax, 0xffffffff
je 0x43e0af
cmp edx, 0
mov dword [esp + 0x20], edx
je 0x43d705
mov eax, dword [edx + 0x10]
cmp eax, 0
je 0x43e0a5
cmp dword [esp + 0x34], 0
jne 0x43d71b
mov eax, dword [esp + 0x40]
mov eax, dword [eax]
mov dword [esp + 0x34], eax
add dword [esp + 0x40], 4
mov ecx, dword [esp + 0x34]
mov dword [esp], ecx
call fcn.0044b210
mov ecx, eax
cmp eax, 0
jne 0x43d760
cmp dword [esp + 0x9c], 0
je 0x43d75a
mov eax, str.runtime:_unknown_pc__p_n
mov dword [esp], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 4], eax
call fcn.00434250
mov eax, 0xc94418
mov dword [esp], eax
call fcn.00433760
xor eax, eax
add esp, 0x7c
ret
mov dword [esp + 0x30], eax
mov dword [esp + 0x74], 0
mov eax, dword [esp + 0x8c]
mov eax, dword [eax + 4]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x74]
cmp eax, dword [esp + 0x98]
jge 0x43d856
mov eax, 0x44d870
cmp dword [esp + 0x34], eax
jne 0x43d9f8
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 0xc]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 8]
mov dword [esp + 0x40], eax
mov dword [esp + 0x3c], 0
mov dword [esp + 0x44], 0
mov dword [esp + 0x30], 0
cmp byte [esp + 0x5d], 0
je 0x43d7ef
mov dword [esp], 0
mov ecx, dword [esp + 0x8c]
mov dword [esp + 4], ecx
call fcn.0044b450
cmp al, 0
jne 0x43d9e6
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 4]
mov dword [esp + 0x2c], eax
mov ecx, dword [esp + 0x34]
mov dword [esp], ecx
call fcn.0044b210
mov dword [esp + 0x58], eax
cmp dword [esp + 0x58], 0
jne 0x43d83d
mov eax, str.runtime:_unknown_pc__p_after_stack_split_n
mov dword [esp], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 4], eax
call fcn.00434250
cmp dword [esp + 0x9c], 0
je 0x43d83d
mov eax, 0xc94471
mov dword [esp], eax
call fcn.00433760
mov eax, dword [esp + 0x58]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x74]
cmp eax, dword [esp + 0x98]
jl 0x43d78b
cmp dword [esp + 0x94], 0
jne 0x43d86e
cmp dword [esp + 0x9c], 0
je 0x43d9d9
cmp dword [esp + 0x9c], 0
je 0x43d885
mov eax, dword [esp + 0x74]
cmp eax, dword [esp + 0x98]
jl 0x43d88d
mov eax, dword [esp + 0x74]
add esp, 0x7c
ret
cmp dword [esp + 0x1c], 0
je 0x43d885
cmp dword [esp + 0x1c], 0
je 0x43d8d3
mov eax, str.runtime:_g_D:_leftover_defer_argp_p_pc_p_n
mov dword [esp], eax
mov ecx, dword [esp + 0x8c]
mov eax, dword [ecx + 0x50]
mov dword [esp + 4], eax
mov eax, dword [ecx + 0x54]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x1c]
mov eax, dword [eax + 8]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x1c]
mov eax, dword [eax + 0xc]
mov dword [esp + 0x10], eax
call fcn.00434250
cmp dword [esp + 0x20], 0
je 0x43d918
mov eax, str.runtime:_g_D:_leftover_panic_argp_p_pc_p_n
mov dword [esp], eax
mov ecx, dword [esp + 0x8c]
mov eax, dword [ecx + 0x50]
mov dword [esp + 4], eax
mov eax, dword [ecx + 0x54]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x20]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 8]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x20]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 0xc]
mov dword [esp + 0x10], eax
call fcn.00434250
mov eax, dword [esp + 0x8c]
mov ecx, dword [eax + 0xc]
cmp ecx, 0
je 0x43d956
mov eax, str._tdefer__p_argp_p_pc_p_n
mov dword [esp], eax
mov dword [esp + 4], ecx
mov eax, dword [ecx + 8]
mov dword [esp + 8], eax
mov dword [esp + 0x1c], ecx
mov eax, dword [ecx + 0xc]
mov dword [esp + 0xc], eax
call fcn.00434250
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax + 0x14]
cmp ecx, 0
jne 0x43d927
mov eax, dword [esp + 0x8c]
mov ecx, dword [eax + 0x10]
cmp ecx, 0
je 0x43d9c7
mov eax, str._tpanic__p_defer__p
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 0x20], ecx
mov eax, dword [ecx + 0x10]
mov dword [esp + 8], eax
call fcn.00434250
mov ecx, dword [esp + 0x20]
mov eax, dword [ecx + 0x10]
cmp eax, 0
je 0x43d9ae
mov eax, str._argp_p_pc_p
mov dword [esp], eax
mov eax, dword [ecx + 0x10]
mov eax, dword [eax + 8]
mov dword [esp + 4], eax
mov eax, dword [ecx + 0x10]
mov eax, dword [eax + 0xc]
mov dword [esp + 8], eax
call fcn.00434250
mov eax, 0xc9462c
mov dword [esp], eax
call fcn.00434250
mov eax, dword [esp + 0x20]
mov ecx, dword [eax + 0xc]
cmp ecx, 0
jne 0x43d965
mov eax, str.traceback_has_leftover_defers_or_panics
mov dword [esp], eax
call fcn.00433760
jmp 0x43d885
mov eax, dword [esp + 0x70]
mov dword [esp + 0x74], eax
jmp 0x43d86e
mov eax, str.______stack_segment_boundary_______n
mov dword [esp], eax
call fcn.00434250
jmp 0x43d7ef
mov eax, dword [esp + 0x30]
mov edx, eax
cmp eax, 0
je 0x43da12
mov eax, dword [edx]
mov ecx, 0x44ea00
cmp eax, ecx
je 0x43df9a
cmp dword [esp + 0x44], 0
jne 0x43da42
mov dword [esp + 0x58], edx
mov dword [esp], edx
mov ecx, dword [esp + 0x34]
mov dword [esp + 4], ecx
call fcn.0044afb0
mov edx, dword [esp + 0x58]
mov ecx, dword [esp + 0x40]
add ecx, eax
mov eax, ecx
mov dword [esp + 0x44], ecx
add dword [esp + 0x44], 4
mov ecx, edx
mov dword [esp + 0x58], edx
mov dword [esp], edx
call fcn.0043aad0
cmp al, 0
je 0x43df20
mov dword [esp + 0x3c], 0
mov dword [esp + 0x54], 0
mov eax, dword [esp + 0x44]
add eax, 0xfffffffc
mov dword [esp + 0x48], eax
cmp dword [esp + 0x9c], 0
jne 0x43de32
cmp byte [esp + 0x5d], 0
jne 0x43de32
mov ecx, dword [esp + 0x40]
cmp byte [esp + 0x5e], 0
je 0x43da9b
add ecx, 8
mov eax, dword [esp + 0x34]
mov dword [esp + 0x38], eax
cmp byte [esp + 0x5f], 0
je 0x43dae1
cmp dword [esp + 0x20], 0
je 0x43dac3
mov eax, dword [esp + 0x20]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 8]
cmp eax, ecx
je 0x43de1f
cmp dword [esp + 0x1c], 0
je 0x43dad9
mov eax, dword [esp + 0x1c]
mov eax, dword [eax + 8]
cmp eax, ecx
je 0x43de0f
mov dword [esp + 0x38], 0
cmp dword [esp + 0x20], 0
je 0x43db18
mov eax, dword [esp + 0x20]
mov eax, dword [eax + 0x10]
cmp eax, 0
je 0x43db06
mov eax, dword [esp + 0x20]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 8]
cmp eax, ecx
jne 0x43ddf7
mov eax, dword [esp + 0x20]
mov eax, dword [eax + 0xc]
mov dword [esp + 0x20], eax
cmp dword [esp + 0x20], 0
jne 0x43dae8
cmp dword [esp + 0x1c], 0
je 0x43db48
mov eax, dword [esp + 0x1c]
mov eax, dword [eax + 8]
cmp eax, ecx
je 0x43db36
mov eax, dword [esp + 0x1c]
mov eax, dword [eax + 8]
cmp eax, 0xffffffff
jne 0x43db48
mov eax, dword [esp + 0x1c]
mov eax, dword [eax + 0x14]
mov dword [esp + 0x1c], eax
cmp dword [esp + 0x1c], 0
jne 0x43db1f
cmp dword [esp + 0x90], 0
jle 0x43dbdc
dec dword [esp + 0x90]
mov eax, dword [esp + 0x58]
mov eax, dword [eax]
mov ecx, 0x431ea0
cmp eax, ecx
jne 0x43dbd8
mov eax, 1
mov byte [esp + 0x5f], al
mov ecx, dword [esp + 0x58]
mov ecx, dword [ecx]
mov edx, fcn.00438380
cmp ecx, edx
je 0x43dbd1
mov ecx, dword [esp + 0x58]
mov ecx, dword [ecx]
mov edx, fcn.004329f0
cmp ecx, edx
je 0x43dbd1
xor eax, eax
mov byte [esp + 0x5e], al
cmp dword [esp + 0x54], 0
je 0x43d856
mov eax, dword [esp + 0x54]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x34], eax
mov dword [esp + 0x3c], 0
mov eax, dword [esp + 0x44]
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], 0
jmp 0x43d77a
mov eax, 1
jmp 0x43db95
xor eax, eax
jmp 0x43db71
cmp dword [esp + 0x94], 0
je 0x43dbf8
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x94]
mov dword [edx + ecx*4], eax
cmp dword [esp + 0x9c], 0
je 0x43dc2a
lea ecx, [esp + 0x30]
mov dword [esp], ecx
mov ecx, dword [esp + 0xa0]
mov dword [esp + 4], ecx
mov eax, dword [esp + 0x9c]
call eax
cmp al, 0
jne 0x43dc2a
mov eax, dword [esp + 0x74]
add esp, 0x7c
ret
cmp byte [esp + 0x5d], 0
je 0x43dc57
cmp byte [esp + 0xa4], 0
jne 0x43dc60
mov ecx, dword [esp + 0x58]
mov dword [esp], ecx
mov ecx, dword [esp + 0x8c]
mov dword [esp + 4], ecx
call fcn.0044b450
cmp al, 0
jne 0x43dc60
inc dword [esp + 0x74]
jmp 0x43db5d
mov eax, dword [esp + 0x34]
mov dword [esp + 0x64], eax
cmp dword [esp + 0x74], 0
jle 0x43dc7f
mov eax, dword [esp + 0x58]
mov eax, dword [eax]
cmp dword [esp + 0x34], eax
ja 0x43dde3
mov ecx, dword [esp + 0x58]
mov dword [esp], ecx
call fcn.0044ae50
mov dword [esp + 0x14], eax
mov eax, 0xc9456e
mov dword [esp], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 4], eax
call fcn.00434250
xor edx, edx
mov eax, dword [esp + 0x50]
shr eax, 2
cmp edx, eax
jae 0x43dcc7
cmp edx, 0xa
jl 0x43dda6
mov eax, str.__...
mov dword [esp], eax
call fcn.00434200
mov eax, 0xc9457b
mov dword [esp], eax
call fcn.00434200
mov ecx, dword [esp + 0x58]
mov dword [esp], ecx
mov ecx, dword [esp + 0x64]
mov dword [esp + 4], ecx
lea ecx, [esp + 0x24]
mov dword [esp + 8], ecx
call fcn.0044af60
mov ecx, eax
mov eax, 0xc9457e
mov dword [esp], eax
mov eax, dword [esp + 0x24]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 8], eax
mov eax, ecx
mov dword [esp + 0xc], ecx
call fcn.00434250
mov ecx, dword [esp + 0x58]
mov eax, dword [ecx]
cmp dword [esp + 0x34], eax
jbe 0x43dd3c
mov eax, 0xc94585
mov dword [esp], eax
mov eax, dword [ecx]
mov ecx, dword [esp + 0x34]
sub ecx, eax
mov eax, ecx
mov dword [esp + 4], ecx
call fcn.00434250
mov eax, dword fs:[0x14]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x64]
cmp eax, 0
jle 0x43dd9d
mov eax, dword fs:[0x14]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x4c]
cmp dword [esp + 0x8c], eax
jne 0x43dd9d
mov eax, str._fp_p_sp_p
mov dword [esp], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 8], eax
call fcn.00434250
mov eax, 0xc94597
mov dword [esp], eax
call fcn.00434250
inc dword [esp + 0x70]
jmp 0x43dc57
cmp dword [esp + 0x68], 2
jl 0x43dd87
jmp 0x43dd6a
cmp edx, 0
mov dword [esp + 0x78], edx
je 0x43ddc0
mov eax, 0xc94578
mov dword [esp], eax
call fcn.00434200
mov edx, dword [esp + 0x78]
mov ecx, edx
mov edx, dword [esp + 0x4c]
mov eax, dword [edx + ecx*4]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.00434b80
mov edx, dword [esp + 0x78]
inc edx
jmp 0x43dca6
cmp byte [esp + 0x5f], 0
jne 0x43dc7f
dec dword [esp + 0x64]
jmp 0x43dc7f
mov eax, dword [esp + 0x20]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 8]
cmp eax, 0xffffffff
je 0x43db06
jmp 0x43db18
mov eax, dword [esp + 0x1c]
mov eax, dword [eax + 0xc]
mov dword [esp + 0x38], eax
jmp 0x43dae1
mov eax, dword [esp + 0x20]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 0xc]
mov dword [esp + 0x38], eax
jmp 0x43dae1
mov eax, dword [esp + 0x44]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x58]
mov eax, dword [eax + 8]
cmp eax, 0x80000000
je 0x43de58
mov eax, dword [esp + 0x58]
mov eax, dword [eax + 8]
mov dword [esp + 0x50], eax
jmp 0x43da8d
cmp dword [esp + 0x54], 0
jne 0x43de6c
mov dword [esp + 0x50], 0
jmp 0x43da8d
mov eax, 0x44d870
cmp dword [esp + 0x3c], eax
jne 0x43de87
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 0x20]
mov dword [esp + 0x50], eax
jmp 0x43da8d
mov ecx, dword [esp + 0x54]
mov dword [esp], ecx
mov ecx, dword [esp + 0x3c]
mov dword [esp + 4], ecx
call fcn.0044b0a0
cmp eax, 0
jl 0x43dea9
mov dword [esp + 0x50], eax
jmp 0x43da8d
mov ecx, dword [esp + 0x58]
mov dword [esp], ecx
call fcn.0044ae50
mov edx, dword [esp + 0x54]
mov dword [esp + 0x14], eax
cmp edx, 0
je 0x43df19
mov ecx, edx
mov dword [esp], edx
call fcn.0044ae50
mov dword [esp + 0x10], eax
mov eax, str.runtime:_unknown_argument_frame_size_for__s_called_from__p___s__n
mov dword [esp], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x10]
mov dword [esp + 0xc], eax
call fcn.00434250
cmp dword [esp + 0x9c], 0
je 0x43df0c
mov eax, str.invalid_stack
mov dword [esp], eax
call fcn.00433760
mov dword [esp + 0x50], 0
jmp 0x43da8d
mov eax, 0xc9455e
jmp 0x43decc
cmp dword [esp + 0x3c], 0
jne 0x43df32
mov eax, dword [esp + 0x44]
mov eax, dword [eax - 4]
mov dword [esp + 0x3c], eax
mov ecx, dword [esp + 0x3c]
mov dword [esp], ecx
call fcn.0044b210
mov dword [esp + 0x54], eax
cmp dword [esp + 0x54], 0
jne 0x43da69
mov ecx, dword [esp + 0x58]
mov dword [esp], ecx
call fcn.0044ae50
mov dword [esp + 0x14], eax
mov eax, str.runtime:_unexpected_return_pc_for__s_called_from__p_n
mov dword [esp], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 8], eax
call fcn.00434250
cmp dword [esp + 0x9c], 0
je 0x43da69
mov eax, str.unknown_caller_pc
mov dword [esp], eax
call fcn.00433760
jmp 0x43da69
mov eax, dword [edx]
cmp dword [esp + 0x34], eax
jbe 0x43da12
cmp dword [esp + 0x9c], 0
je 0x43dff0
mov eax, dword [esp + 0x34]
mov dword [esp + 0x38], eax
mov dword [esp + 0x4c], 0
mov dword [esp + 0x50], 0
lea ecx, [esp + 0x30]
mov dword [esp], ecx
mov ecx, dword [esp + 0xa0]
mov dword [esp + 4], ecx
mov eax, dword [esp + 0x9c]
call eax
cmp al, 0
jne 0x43dff0
mov eax, dword [esp + 0x74]
add esp, 0x7c
ret
mov eax, dword [esp + 0x40]
mov ecx, dword [eax + 4]
mov eax, dword [ecx + 0xb8]
mov dword [esp + 0x34], eax
mov eax, dword [ecx + 0xc4]
mov dword [esp + 0x40], eax
mov dword [esp + 0x3c], 0
mov dword [esp + 0x44], 0
mov dword [esp + 0x30], 0
cmp byte [esp + 0x5d], 0
je 0x43e046
mov dword [esp], 0
mov ecx, dword [esp + 0x8c]
mov dword [esp + 4], ecx
call fcn.0044b450
cmp al, 0
jne 0x43e096
mov ecx, dword [esp + 0x34]
mov dword [esp], ecx
call fcn.0044b210
mov dword [esp + 0x58], eax
cmp dword [esp + 0x58], 0
jne 0x43e089
mov eax, str.runtime:_unknown_pc__p_after_exception_handler_n
mov dword [esp], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 4], eax
call fcn.00434250
cmp dword [esp + 0x9c], 0
je 0x43e089
mov eax, str.unknown_pc
mov dword [esp], eax
call fcn.00433760
mov eax, dword [esp + 0x58]
mov dword [esp + 0x30], eax
jmp 0x43d77a
mov eax, str.______exception_handler_______n
mov dword [esp], eax
call fcn.00434250
jmp 0x43e046
mov eax, dword [edx + 0xc]
mov edx, eax
jmp 0x43d6f0
mov eax, dword [ecx + 0x14]
mov ecx, eax
jmp 0x43d6db
mov eax, 1
jmp 0x43d6cf
mov eax, dword [ecx + 0x2c]
cmp eax, 0
je 0x43e0e4
mov eax, dword [ecx + 0x34]
mov dword [esp + 0x80], eax
mov eax, dword [ecx + 0x30]
mov dword [esp + 0x84], eax
jmp 0x43d671
mov eax, dword [ecx + 0x18]
mov dword [esp + 0x80], eax
mov eax, dword [ecx + 0x14]
mov dword [esp + 0x84], eax
jmp 0x43d671