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

Disassembly:
push ebp
mov ecx, 0x11
mov edx, 4
push edi
push esi
push ebx
sub esp, 0xec
mov eax, dword [esp + 0x100]
lea edi, [esp + 0x9c]
mov esi, dword [esp + 0x11c]
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x104]
mov dword [esp + 0x70], 0
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x108]
mov dword [esp + 0x74], 0
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x10c]
mov dword [esp + 0x78], 0
mov dword [esp + 0x48], eax
xor eax, eax
rep stosd dword es:[edi], eax
mov ecx, 0x30
mov dword [esp + 0x7c], 0
mov dword [esp + 0x8c], 0
mov dword [esp + 0x90], 0
mov dword [esp + 0x94], 0
mov dword [esp + 0x98], 0
mov dword [esp + 0x5c], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x64], 0
call sym._nimNewObj_8
mov dword [eax], sym._rttiDestroy__pureZosproc_u1811_4
mov ebp, eax
mov eax, esi
mov byte [ebp + 0x2d], al
and eax, 0x10
mov byte [ebp + 0x2c], 1
mov dword [esp], 0x4331ac
mov dword [esp + 0x9c], 0x44
mov byte [esp + 0x34], al
call sym.___emutls_get_address
cmp byte [esp + 0x34], 0
mov ebx, eax
jne 0x41e400
mov dword [esp + 0xc8], 0x100
test esi, 0x20
jne 0x41e050
lea eax, [esp + 0x5c]
lea edi, [esp + 0x80]
mov dword [esp + 0x84], 0
mov dword [esp + 4], eax
lea eax, [esp + 0xd4]
mov dword [esp + 0x80], 0xc
mov dword [esp + 0x88], 1
mov dword [esp + 0xc], 0
mov dword [esp + 8], edi
mov dword [esp], eax
call dword [0x4420e4]
sub esp, 0x10
test eax, eax
jne 0x41dea3
call sym._osLastError__stdZoserrors_u125_0
mov ecx, eax
movzx eax, byte [ebx]
test al, al
jne 0x41dfb0
mov eax, dword [0x4353a8]
mov edx, dword [0x4353ac]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call sym._raiseOSError__stdZoserrors_u122
movzx eax, byte [ebx]
test al, al
jne 0x41dfb0
lea eax, [esp + 0xd8]
mov dword [esp + 8], edi
mov dword [esp + 4], eax
lea eax, [esp + 0x60]
mov dword [esp + 0x84], 0
mov dword [esp + 0x80], 0xc
mov dword [esp + 0x88], 1
mov dword [esp + 0xc], 0
mov dword [esp], eax
call dword [0x4420e4]
sub esp, 0x10
test eax, eax
je 0x41e670
movzx eax, byte [ebx]
test al, al
jne 0x41dfb0
test esi, 8
je 0x41e6a8
mov eax, dword [esp + 0xd8]
mov dword [esp + 0xdc], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 8], 0
mov dword [esp + 4], 1
mov dword [esp], eax
call dword [0x4420e0]
sub esp, 0xc
test eax, eax
je 0x41e500
mov eax, dword [esp + 0x60]
mov dword [esp + 8], 0
mov dword [esp + 4], 1
mov dword [esp], eax
call dword [0x4420e0]
sub esp, 0xc
test eax, eax
jne 0x41e081
call sym._osLastError__stdZoserrors_u125_0
mov edi, eax
movzx eax, byte [ebx]
test al, al
jne 0x41dfb0
mov eax, dword [0x4353a8]
mov edx, dword [0x4353ac]
mov dword [esp], edi
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call sym._raiseOSError__stdZoserrors_u122
movzx eax, byte [ebx]
test al, al
je 0x41e081
nop
mov dword [esp + 0x3c], 0
lea esi, [esi]
nop
mov esi, dword [esp + 0x78]
mov edi, dword [esp + 0x7c]
mov byte [ebx], 0
mov byte [esp + 0x34], al
mov dword [esp], esi
mov dword [esp + 4], edi
call sym._eqdestroy___stdZwidestrs_u7_8
sub esp, 8
cmp byte [ebx], 0
jne 0x41e03c
mov esi, dword [esp + 0x70]
mov edi, dword [esp + 0x74]
mov dword [esp], esi
mov dword [esp + 4], edi
call sym._eqdestroy___stdZwidestrs_u7_8
sub esp, 8
cmp byte [ebx], 0
jne 0x41e03c
mov esi, dword [esp + 0x68]
mov edi, dword [esp + 0x6c]
mov dword [esp], esi
mov dword [esp + 4], edi
call sym._eqdestroy___stdZwidestrs_u7_8
sub esp, 8
cmp byte [ebx], 0
jne 0x41e03c
mov edi, dword [esp + 0x3c]
movzx eax, byte [esp + 0x34]
test edi, edi
je 0x41e03a
mov ecx, dword [edi]
mov dword [esp + 0x34], ecx
and ecx, 0x40000000
je 0x41e4e0
mov byte [ebx], al
add esp, 0xec
mov eax, ebp
pop ebx
pop esi
pop edi
pop ebp
ret 0x20
lea eax, [esp + 0x64]
mov dword [esp + 8], ebp
lea edx, [esp + 0x5c]
mov dword [esp + 4], eax
lea eax, [esp + 0x60]
lea ecx, [esp + 0x9c]
mov dword [esp], eax
call sym._createAllPipeHandles__pureZosproc_u904_20
movzx eax, byte [ebx]
sub esp, 0xc
test al, al
jne 0x41dfb0
mov eax, dword [esp + 0x5c]
mov dword [ebp + 0xc], eax
mov eax, dword [esp + 0x60]
mov dword [ebp + 0x10], eax
mov eax, dword [esp + 0x64]
mov dword [ebp + 0x14], eax
test esi, 4
je 0x41e46f
mov eax, dword [esp + 0x40]
mov dword [esp + 0x3c], 0
lea edi, [eax + 4]
mov eax, dword [esp + 0x38]
test eax, eax
mov eax, 0x4351c0
cmove edi, eax
mov eax, dword [esp + 0x114]
test eax, eax
je 0x41e0ef
mov eax, dword [0x435374]
mov edx, dword [0x435378]
mov dword [esp], eax
mov dword [esp + 4], edx
call sym._failedAssertImpl__stdZassertions_u270_8
movzx eax, byte [ebx]
sub esp, 8
test al, al
jne 0x41dfc0
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x48]
xor eax, eax
add edx, 4
test ecx, ecx
cmovg eax, edx
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x118]
test eax, eax
je 0x41e4d0
mov ecx, dword [esp + 0x118]
call sym._buildEnv__pureZosproc_u857_4
mov dword [esp + 0x118], eax
movzx eax, byte [ebx]
mov dword [esp + 0x48], edx
test al, al
jne 0x41dfc0
test esi, 1
je 0x41e187
mov ecx, edi
call sym._cstrToNimstr_4
lea ecx, [esp + 0x80]
mov dword [esp + 0x84], edx
mov dword [esp + 0x4c], edx
mov edx, 1
mov dword [esp + 0x80], eax
call sym._echoBinSafe_8
mov eax, dword [esp + 0x4c]
test eax, eax
je 0x41e17c
test dword [eax], 0x40000000
je 0x41e660
movzx eax, byte [ebx]
test al, al
jne 0x41dfc0
mov ecx, edi
call sym._newWideCString__stdZwidestrs_u302_4
mov dword [esp + 0x68], eax
movzx eax, byte [ebx]
mov dword [esp + 0x6c], edx
test al, al
jne 0x41dfc0
mov ecx, dword [esp + 0x118]
test ecx, ecx
je 0x41e4c0
mov edx, dword [esp + 0x48]
mov ecx, dword [esp + 0x118]
call sym._newWideCString__stdZwidestrs_u281_8
mov dword [esp + 0x70], eax
movzx eax, byte [ebx]
mov dword [esp + 0x74], edx
test al, al
jne 0x41dfc0
mov ecx, dword [esp + 0x44]
call sym._newWideCString__stdZwidestrs_u302_4
mov dword [esp + 0x78], eax
movzx eax, byte [ebx]
mov dword [esp + 0x7c], edx
test al, al
jne 0x41dfc0
mov eax, esi
lea edx, [esp + 0x8c]
lea ecx, [esp + 0x9c]
mov dword [esp + 0x10], 1
and eax, 0x40
mov dword [esp + 0x24], edx
mov edx, dword [esp + 0x7c]
cmp al, 1
mov dword [esp + 0x20], ecx
sbb eax, eax
mov dword [esp + 0x1c], edx
mov edx, dword [esp + 0x74]
and eax, 0xf8000000
mov dword [esp + 0xc], 0
add eax, 0x8000420
mov dword [esp + 0x18], edx
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov dword [esp], 0
call dword [0x4420c4]
sub esp, 0x28
mov edi, eax
call sym._osLastError__stdZoserrors_u125_0
mov dword [esp + 0x44], eax
movzx eax, byte [ebx]
test al, al
jne 0x41dfc0
cmp byte [esp + 0x34], 0
jne 0x41e370
mov eax, dword [esp + 0xd4]
cmp eax, 4
jle 0x41e2d7
mov dword [esp], eax
call dword [0x4420cc]
sub esp, 4
test eax, eax
jne 0x41e2c3
call sym._osLastError__stdZoserrors_u125_0
cmp byte [ebx], 0
jne 0x41e7d8
mov edx, dword [0x4353a8]
mov ecx, dword [0x4353ac]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call sym._raiseOSError__stdZoserrors_u122
cmp byte [ebx], 0
jne 0x41e7d8
mov dword [esp + 0xd4], 0xffffffff
mov eax, dword [esp + 0xd8]
cmp eax, 4
jle 0x41e331
mov dword [esp], eax
call dword [0x4420cc]
sub esp, 4
test eax, eax
jne 0x41e31d
call sym._osLastError__stdZoserrors_u125_0
cmp byte [ebx], 0
jne 0x41e7d8
mov edx, dword [0x4353a8]
mov ecx, dword [0x4353ac]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call sym._raiseOSError__stdZoserrors_u122
cmp byte [ebx], 0
jne 0x41e7d8
mov dword [esp + 0xd8], 0xffffffff
and esi, 8
jne 0x41e370
mov eax, dword [esp + 0xdc]
cmp eax, 4
jle 0x41e370
mov dword [esp], eax
call dword [0x4420cc]
sub esp, 4
test eax, eax
je 0x41e798
cmp byte [ebx], 0
jne 0x41e7d8
mov dword [esp + 0xdc], 0xffffffff
lea esi, [esi]
mov eax, dword [esp + 0x118]
test eax, eax
je 0x41e38a
mov eax, dword [esp + 0x118]
mov dword [esp], eax
call sym._dealloc
test edi, edi
jne 0x41e3d5
test byte [ebp + 0x2d], 0x20
jne 0x41e540
mov eax, dword [esp + 0x44]
cmp eax, 0x57
je 0x41e55f
cmp eax, 2
je 0x41e55f
mov eax, dword [esp + 0x38]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x44]
mov dword [esp], eax
call sym._raiseOSError__stdZoserrors_u122
movzx eax, byte [ebx]
test al, al
jne 0x41dfc0
mov eax, dword [esp + 0x8c]
mov byte [ebp + 0x2c], 0
mov dword [ebp + 4], eax
mov eax, dword [esp + 0x90]
mov dword [ebp + 8], eax
mov eax, dword [esp + 0x94]
mov dword [ebp + 0x18], eax
movzx eax, byte [ebx]
jmp 0x41dfc0
mov dword [esp], 0xfffffff4
call dword [0x4420c8]
sub esp, 4
mov dword [esp + 0xdc], eax
mov dword [esp], 0xfffffff6
call dword [0x4420c8]
sub esp, 4
mov dword [esp + 0xd4], eax
mov dword [esp], 0xfffffff5
call dword [0x4420c8]
sub esp, 4
mov dword [esp + 0xd8], eax
mov eax, dword [esp + 0xd4]
mov dword [ebp + 0xc], eax
mov eax, dword [esp + 0xd8]
mov dword [ebp + 0x10], eax
mov eax, dword [esp + 0xdc]
mov dword [ebp + 0x14], eax
test esi, 4
jne 0x41e0a2
mov eax, dword [esp + 0x114]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x110]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x38]
mov dword [esp], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 4], eax
call sym._buildCommandLine__pureZosproc_u845_16
mov ecx, eax
movzx eax, byte [ebx]
sub esp, 0x10
mov dword [esp + 0x3c], edx
test al, al
jne 0x41dfc0
lea edi, [edx + 4]
test ecx, ecx
mov eax, 0x4351c0
cmove edi, eax
jmp 0x41e0ef
xor ecx, ecx
call sym._newWideCString__stdZwidestrs_u302_4
jmp 0x41e1c0
mov dword [esp + 0x48], 0xffffffff
jmp 0x41e136
mov dword [esp], edi
mov byte [esp + 0x34], al
call sym._deallocShared
movzx eax, byte [esp + 0x34]
jmp 0x41e03a
call sym._osLastError__stdZoserrors_u125_0
mov edi, eax
movzx eax, byte [ebx]
test al, al
jne 0x41dfb0
mov eax, dword [0x4353a8]
mov edx, dword [0x4353ac]
mov dword [esp], edi
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call sym._raiseOSError__stdZoserrors_u122
movzx eax, byte [ebx]
test al, al
je 0x41df53
jmp 0x41dfb0
mov ecx, ebp
call sym._nospclose_4
movzx eax, byte [ebx]
test al, al
jne 0x41dfc0
mov eax, dword [esp + 0x44]
cmp eax, 0x57
jne 0x41e3a5
mov eax, dword [esp + 0x38]
lea ecx, [eax + 0x2a]
call sym._rawNewString_4
lea esi, [eax + edx + 4]
mov edi, edx
mov edx, 0x2720
mov word [esi + 0x1c], dx
mov edx, eax
add edx, 0x1e
mov dword [esi], 0x75716552
mov dword [esi + 4], 0x65747365
mov dword [esi + 8], 0x6f632064
mov dword [esi + 0xc], 0x6e616d6d
mov dword [esi + 0x10], 0x6f6e2064
mov dword [esi + 0x14], 0x6f662074
mov dword [esi + 0x18], 0x3a646e75
mov byte [esi + 0x1e], 0
jo 0x41e840
lea esi, [eax + edi + 0x22]
mov eax, dword [esp + 0x38]
test eax, eax
jle 0x41e607
add eax, 1
jo 0x41e852
mov dword [esp + 0x34], edx
test eax, eax
js 0x41e7e8
mov ecx, dword [esp + 0x40]
mov dword [esp + 8], eax
mov dword [esp], esi
add ecx, 4
mov dword [esp + 4], ecx
call sym._memcpy
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x34]
add eax, edx
jo 0x41e852
lea esi, [eax + edi + 4]
mov edx, eax
mov eax, edx
mov dword [esi], 0x4f202e27
add eax, 0xc
mov dword [esi + 4], 0x72652053
mov dword [esi + 8], 0x3a726f72
mov byte [esi + 0xc], 0
jo 0x41e828
mov dword [esp + 4], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 8], edi
mov dword [esp], eax
call sym._raiseOSError__stdZoserrors_u122
test edi, edi
je 0x41e64e
test dword [edi], 0x40000000
je 0x41e7c8
movzx eax, byte [ebx]
test al, al
je 0x41e3d5
jmp 0x41dfc0
mov dword [esp], eax
call sym._deallocShared
jmp 0x41e17c
call sym._osLastError__stdZoserrors_u125_0
mov ecx, eax
movzx eax, byte [ebx]
test al, al
jne 0x41dfb0
mov eax, dword [0x4353a8]
mov edx, dword [0x4353ac]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call sym._raiseOSError__stdZoserrors_u122
jmp 0x41defe
lea eax, [esp + 0xdc]
mov dword [esp + 8], edi
mov dword [esp + 4], eax
lea eax, [esp + 0x64]
mov dword [esp + 0x84], 0
mov dword [esp + 0x80], 0xc
mov dword [esp + 0x88], 1
mov dword [esp + 0xc], 0
mov dword [esp], eax
call dword [0x4420e4]
sub esp, 0x10
test eax, eax
jne 0x41e721
call sym._osLastError__stdZoserrors_u125_0
mov ecx, eax
movzx eax, byte [ebx]
test al, al
jne 0x41dfb0
mov eax, dword [0x4353a8]
mov edx, dword [0x4353ac]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call sym._raiseOSError__stdZoserrors_u122
movzx eax, byte [ebx]
test al, al
jne 0x41dfb0
mov eax, dword [esp + 0x64]
mov dword [esp + 8], 0
mov dword [esp + 4], 1
mov dword [esp], eax
call dword [0x4420e0]
sub esp, 0xc
test eax, eax
jne 0x41df2b
call sym._osLastError__stdZoserrors_u125_0
mov ecx, eax
movzx eax, byte [ebx]
test al, al
jne 0x41dfb0
mov eax, dword [0x4353a8]
mov edx, dword [0x4353ac]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call sym._raiseOSError__stdZoserrors_u122
movzx eax, byte [ebx]
test al, al
je 0x41df2b
jmp 0x41dfb0
call sym._osLastError__stdZoserrors_u125_0
cmp byte [ebx], 0
jne 0x41e7d8
mov edx, dword [0x4353a8]
mov ecx, dword [0x4353ac]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call sym._raiseOSError__stdZoserrors_u122
jmp 0x41e356
mov dword [esp], edi
call sym._deallocShared
jmp 0x41e64e
mov eax, 1
jmp 0x41dfc0
mov dword [esp + 0x10], 0x7fffffff
mov dword [esp + 0x14], 0
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp], 0x80000000
mov dword [esp + 4], 0xffffffff
call sym._raiseRangeErrorI
mov edx, dword [esp + 0x34]
jmp 0x41e607
mov dword [esp + 0x34], edx
call sym._raiseOverflow
mov eax, dword [esp + 0x34]
jmp 0x41e62a
mov dword [esp + 0x34], eax
call sym._raiseOverflow
mov edx, dword [esp + 0x34]
jmp 0x41e5bd
mov dword [esp + 0x34], edx
call sym._raiseOverflow
mov edx, dword [esp + 0x34]
jmp 0x41e607