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

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x5c
mov eax, dword [0x51f254]
add dword [sym.zsh.exe_queueing_enabled], 1
cmp byte [0x521280], 0
mov edi, dword [esp + 0x70]
mov dword [esp + 0x34], 0
mov dword [esp + 0x2c], eax
mov eax, dword [sym.zsh.exe_thisjob]
mov dword [esp + 0x4c], eax
mov eax, dword [0x5212d8]
mov dword [esp + 0x38], eax
mov eax, dword [0x51f168]
mov dword [esp + 0x3c], eax
mov eax, dword [0x5212d0]
mov dword [esp + 0x48], eax
jne 0x41e030
mov eax, dword [0x522e08]
mov edx, dword [0x522e0c]
mov dword [esp + 0x40], eax
mov eax, dword [0x5216f0]
mov dword [esp + 0x44], edx
test eax, eax
je 0x41d71d
cmp byte [0x522d62], 0
je 0x41d838
mov eax, dword [edi + 4]
mov ebx, dword [eax]
lea edx, [eax + 4]
mov dword [edi + 4], edx
mov ecx, edx
mov eax, ebx
and eax, 0x1f
cmp eax, 1
je 0x41d878
mov dword [sym.zsh.exe_lastval], 0
mov dword [0x522e4c], 0
mov eax, dword [esp + 0x38]
mov esi, dword [esp + 0x34]
mov dword [0x5212d8], eax
mov eax, dword [esp + 0x3c]
mov dword [0x51f168], eax
mov eax, dword [esp + 0x48]
mov dword [0x5212d0], eax
test esi, esi
je 0x41d868
mov dword [esp + 4], esi
mov dword [esp], 0x521280
call sub.cygwin1.dll_strcpy
mov dword [esp], esi
call sym.zsh.exe_zsfree
mov eax, dword [esp + 0x40]
mov edx, dword [esp + 0x44]
mov ebx, dword [esp + 0x74]
mov dword [0x522e08], eax
mov dword [0x522e0c], edx
test ebx, ebx
je 0x41d7af
mov eax, dword [esp + 0x4c]
mov dword [sym.zsh.exe_thisjob], eax
mov ecx, dword [esp + 0x78]
test ecx, ecx
je 0x41d7c5
mov edx, dword [sym.zsh.exe_sigtrapped]
test edx, edx
jne 0x41e045
sub dword [sym.zsh.exe_queueing_enabled], 1
jne 0x41d82d
mov eax, dword [sym.zsh.exe_queue_front]
cmp dword [sym.zsh.exe_queue_rear], eax
je 0x41d82d
lea esi, [esi]
nop
add eax, 1
cdq
shr edx, 0x19
add eax, edx
and eax, 0x7f
sub eax, edx
mov dword [sym.zsh.exe_queue_front], eax
mov eax, dword [eax*4 + sym.zsh.exe_signal_mask_queue]
mov dword [esp], eax
call sym.zsh.exe_signal_setmask
mov ebx, eax
mov eax, dword [sym.zsh.exe_queue_front]
mov eax, dword [eax*4 + sym.zsh.exe_signal_queue]
mov dword [esp], eax
call sym.zsh.exe_zhandler
mov dword [esp], ebx
call sym.zsh.exe_signal_setmask
mov eax, dword [sym.zsh.exe_queue_front]
cmp eax, dword [sym.zsh.exe_queue_rear]
jne 0x41d7e0
add esp, 0x5c
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [0x5212d0], 0
mov dword [0x51f168], 0
mov dword [0x5212d8], 0
mov byte [0x521280], 0
jmp 0x41d71d
mov byte [0x521280], 0
jmp 0x41d78b
mov eax, dword [esp + 0x2c]
mov ebp, edi
and eax, 4
mov dword [esp + 0x30], eax
lea esi, [esi]
mov eax, dword [sym.zsh.exe_breaks]
or eax, dword [sym.zsh.exe_retflag]
or eax, dword [sym.zsh.exe_errflag]
mov dword [esp + 0x1c], eax
jne 0x41d74c
mov eax, ebx
mov dword [esp + 0x28], ecx
mov edi, dword [0x523080]
shr eax, 5
mov edx, dword [0x5230c8]
mov dword [0x51f250], 0
mov dword [esp + 0x18], eax
and eax, 0x20
mov dword [esp + 0x20], edi
mov edi, eax
test edx, edx
je 0x41d8f0
mov eax, dword [0x5230c4]
test eax, eax
jne 0x41d8f0
mov eax, dword [sym.zsh.exe_locallevel]
cmp dword [0x5230c0], eax
je 0x41d940
lea esi, [esi]
mov eax, dword [sym.zsh.exe_ineval]
test eax, eax
jne 0x41db7b
mov esi, dword [ecx]
mov dword [esp + 0x24], esi
test edi, edi
jne 0x41db64
mov eax, esi
and eax, 0x1f
cmp eax, 2
je 0x41db48
mov eax, dword [0x523848]
test eax, eax
je 0x41e008
cmp byte [0x522cf1], 0
je 0x41d940
test edx, edx
je 0x41e060
lea esi, [esi]
nop
mov dword [0x52126c], 0
xor eax, eax
test edx, edx
setne al
mov dword [esp + 0x28], eax
test edi, edi
jne 0x41dea0
mov eax, dword [ecx]
mov dword [esp + 0x24], eax
add ecx, 4
mov edx, dword [esp + 0x24]
mov dword [ebp + 4], ecx
mov eax, edx
and eax, 0x1f
cmp eax, 2
jne 0x41e09c
mov esi, dword [esp + 0x2c]
mov eax, edx
mov ebx, edx
shr eax, 5
shr ebx, 0xa
and eax, 3
lea ebx, [ecx + ebx*4]
test esi, esi
jne 0x41d9a2
mov edi, eax
neg edi
sbb ecx, ecx
and ecx, 3
mov dword [0x51f254], ecx
test dh, 1
je 0x41d9bf
test eax, eax
jne 0x41d9b5
mov dword [0x51f250], 1
mov dword [0x51f254], 3
cmp eax, 1
je 0x41dd30
cmp eax, 2
je 0x41dd00
test eax, eax
je 0x41dcc0
mov edx, dword [ebx]
lea ecx, [ebx + 4]
mov dword [ebp + 4], ecx
mov eax, edx
and eax, 0x1f
cmp eax, 2
je 0x41d97f
mov esi, dword [esp + 0x18]
mov edi, dword [0x52126c]
mov dword [ebp + 4], ebx
and esi, 0x10
lea esi, [esi]
nop
mov eax, dword [esp + 0x30]
test eax, eax
jne 0x41da11
mov eax, dword [esp + 0x2c]
mov dword [0x51f254], eax
mov eax, dword [0x523848]
test eax, eax
je 0x41da2f
cmp byte [0x522cf1], 0
jne 0x41da2f
mov eax, dword [esp + 0x28]
test eax, eax
je 0x41dfa0
mov eax, dword [esp + 0x20]
or edi, dword [esp + 0x1c]
or edi, dword [0x51f250]
mov dword [0x523080], eax
jne 0x41daf8
mov ecx, dword [0x523844]
mov edx, dword [sym.zsh.exe_lastval]
mov eax, dword [0x522e4c]
test ecx, ecx
je 0x41def8
or eax, edx
je 0x41daf8
test byte [0x51f254], 1
je 0x41ded0
cmp byte [0x522cf5], 0
je 0x41df0d
cmp byte [0x522d1f], 0
mov ebx, dword [0x51f254]
jne 0x41db20
mov eax, dword [sym.zsh.exe_locallevel]
or eax, dword [0x5216f0]
jne 0x41db20
lea esi, [esi]
nop
and ebx, 1
jne 0x41daf8
mov edi, dword [sym.zsh.exe_sigtrapped]
test edi, edi
jne 0x41e08b
call sub.cygwin1.dll_getpid
cdq
mov ecx, eax
mov eax, dword [0x522e44]
xor ecx, dword [sym.zsh.exe_mypid]
xor eax, edx
or eax, ecx
je 0x41e081
call fcn.00412a10
test ebx, ebx
je 0x41daf8
mov eax, dword [0x522bf0]
mov dword [sym.zsh.exe_retflag], 1
mov dword [sym.zsh.exe_breaks], eax
lea esi, [esi]
test esi, esi
jne 0x41d74c
mov ecx, dword [ebp + 4]
mov eax, ecx
add ecx, 4
mov ebx, dword [eax]
mov dword [ebp + 4], ecx
mov eax, ebx
and eax, 0x1f
cmp eax, 1
je 0x41d888
jmp 0x41d74c
test bl, 2
jne 0x41daa8
cmp byte [0x522cf4], 0
je 0x41dae1
and ebx, 1
jne 0x41dae1
mov ebx, 1
jmp 0x41daad
mov eax, esi
mov esi, dword [ecx + 4]
shr eax, 5
and eax, 0x1c
mov dword [esp + 0x24], eax
mov eax, esi
shr eax, 6
cmp dword [esp + 0x24], 0x10
cmovne esi, eax
test esi, esi
je 0x41db7b
mov dword [0x522e0c], 0
sub esi, 1
mov dword [0x522e08], esi
mov esi, dword [0x523848]
test esi, esi
je 0x41d940
cmp byte [0x522cf1], 0
je 0x41d940
test edx, edx
jne 0x41d940
movzx eax, byte [0x522cf4]
test edi, edi
mov byte [0x522cf4], 0
mov dword [0x51f254], 3
mov byte [esp + 0x24], al
lea eax, [ecx + 4]
cmovne ecx, eax
mov dword [esp + 0x28], ecx
mov eax, dword [esp + 0x28]
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov eax, dword [ebp]
mov dword [esp], eax
call sym.zsh.exe_getpermtext
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov dword [esp], str.ZSH_DEBUG_CMD
call sym.zsh.exe_assignsparam
mov dword [esp], 0x22
mov esi, eax
mov eax, dword [0x52126c]
mov dword [esp + 0x78], eax
mov eax, dword [sym.zsh.exe_lastval]
mov dword [esp + 0x28], eax
call fcn.00467b90
mov edx, dword [sym.zsh.exe_retflag]
test edx, edx
jne 0x41dc34
mov eax, dword [esp + 0x28]
mov dword [sym.zsh.exe_lastval], eax
sar eax, 0x1f
mov dword [0x522e4c], eax
mov eax, dword [esp + 0x78]
cmp byte [0x522cf4], 1
mov dword [0x52126c], eax
mov eax, dword [esp + 0x2c]
mov dword [0x51f254], eax
mov eax, 1
sbb eax, 0xffffffff
mov dword [esp + 0x28], eax
movzx eax, byte [esp + 0x24]
mov byte [0x522cf4], al
test esi, esi
je 0x41dc7f
mov dword [esp + 8], 1
mov dword [esp + 4], 0
mov dword [esp], esi
call sym.zsh.exe_unsetparam_pm
mov dword [0x52126c], 0
mov eax, dword [ebp + 4]
test edi, edi
je 0x41df25
shr ebx, 0xb
cmp dword [esp + 0x28], 2
lea ebx, [eax + ebx*4]
jne 0x41e0b1
xor edi, edi
mov esi, dword [esp + 0x18]
mov dword [ebp + 4], ebx
and esi, 0x10
jmp 0x41da00
mov esi, dword [esp + 0x18]
and esi, 0x10
test dh, 2
jne 0x41dec0
mov eax, dword [esp + 0x78]
test eax, eax
setne cl
xor eax, eax
test esi, esi
setne al
and eax, ecx
mov ecx, dword [esp + 0x18]
mov dword [esp], eax
mov eax, ebp
call fcn.0041c8f0
mov dword [ebp + 4], ebx
mov edi, dword [0x52126c]
jmp 0x41da00
test dh, 2
je 0x41dde8
mov eax, ebp
call fcn.0041fee0
test eax, eax
je 0x41de03
mov dword [esp], 0xb
call fcn.00464180
jmp 0x41d9d9
test dh, 2
je 0x41dd58
mov eax, ebp
call fcn.0041fee0
test eax, eax
jne 0x41dd6f
mov dword [esp], 0xc
call fcn.00464180
jmp 0x41d9d9
mov dword [esp], 0
mov ecx, 2
mov eax, ebp
call fcn.0041c8f0
test eax, eax
je 0x41dd40
mov eax, dword [ebx]
lea edx, [ebx + 4]
mov dword [ebp + 4], edx
mov ecx, eax
shr ecx, 0xa
lea ebx, [edx + ecx*4]
mov edx, eax
and edx, 0x1f
cmp edx, 2
jne 0x41de6e
shr eax, 5
and eax, 3
cmp eax, 1
je 0x41ddaf
jmp 0x41de93
shr eax, 5
and eax, 3
cmp eax, 1
jne 0x41de90
mov eax, dword [ebx]
lea edx, [ebx + 4]
mov ecx, eax
shr ecx, 0xa
lea ebx, [edx + ecx*4]
mov ecx, eax
and ecx, 0x1f
cmp ecx, 2
je 0x41dda0
mov esi, dword [esp + 0x18]
mov dword [ebp + 4], edx
mov dword [esp + 0x1c], 1
mov edi, dword [0x52126c]
and esi, 0x10
jmp 0x41da00
mov dword [esp], 0
mov ecx, 2
mov eax, ebp
call fcn.0041c8f0
test eax, eax
jne 0x41dd18
mov eax, dword [ebx]
lea edx, [ebx + 4]
mov dword [ebp + 4], edx
mov ecx, eax
shr ecx, 0xa
lea ebx, [edx + ecx*4]
mov edx, eax
and edx, 0x1f
cmp edx, 2
jne 0x41de6e
shr eax, 5
and eax, 3
cmp eax, 2
je 0x41de3b
jmp 0x41de63
shr eax, 5
and eax, 3
cmp eax, 2
jne 0x41de60
mov eax, dword [ebx]
lea edx, [ebx + 4]
mov ecx, eax
shr ecx, 0xa
lea ebx, [edx + ecx*4]
mov ecx, eax
and ecx, 0x1f
cmp ecx, 2
je 0x41de30
jmp 0x41ddc6
mov dword [ebp + 4], edx
test eax, eax
jne 0x41dd18
mov dword [ebp + 4], ebx
mov esi, dword [esp + 0x18]
mov dword [esp + 0x1c], 1
mov edi, dword [0x52126c]
and esi, 0x10
jmp 0x41da00
mov dword [ebp + 4], edx
test eax, eax
jne 0x41dd40
jmp 0x41de6b
shr ebx, 0xb
lea ebx, [ecx + ebx*4]
mov eax, ebp
call fcn.0041fee0
mov edi, dword [0x52126c]
jmp 0x41dca7
mov eax, ebp
call fcn.0041fee0
jmp 0x41dcf0
mov dword [esp], 0x21
call fcn.00467b90
mov edx, dword [sym.zsh.exe_lastval]
mov dword [0x52126c], 1
mov eax, dword [0x522e4c]
lea esi, [esi]
or eax, edx
je 0x41daf8
cmp byte [0x522cf5], 0
jne 0x41da83
cmp byte [0x522cf4], 0
mov ebx, dword [0x51f254]
jne 0x41daa8
jmp 0x41daf8
mov edx, dword [eax]
lea ecx, [eax + 4]
mov dword [ebp + 4], ecx
mov eax, edx
and eax, 0x1f
cmp dword [esp + 0x28], 2
jne 0x41e0a4
cmp eax, 2
jne 0x41df7a
mov eax, edx
shr eax, 0xa
and edx, 0x60
lea ecx, [ecx + eax*4]
mov dword [ebp + 4], ecx
jne 0x41df68
jmp 0x41df7a
mov ecx, eax
shr ecx, 0xa
lea ecx, [edx + ecx*4]
test al, 0x60
je 0x41e028
mov eax, dword [ecx]
lea edx, [ecx + 4]
mov ecx, eax
and ecx, 0x1f
cmp ecx, 2
je 0x41df58
mov dword [ebp + 4], edx
mov esi, dword [esp + 0x18]
mov dword [esp + 0x1c], 0
mov edi, 1
mov dword [0x52126c], 1
and esi, 0x10
jmp 0x41da00
mov dword [esp], 0x22
mov eax, dword [sym.zsh.exe_lastval]
movzx ebx, byte [0x522cf4]
mov dword [0x51f254], 3
mov dword [esp + 0x18], eax
mov byte [0x522cf4], 0
call fcn.00467b90
mov eax, dword [sym.zsh.exe_retflag]
test eax, eax
jne 0x41dfe7
mov eax, dword [esp + 0x18]
mov dword [sym.zsh.exe_lastval], eax
sar eax, 0x1f
mov dword [0x522e4c], eax
mov eax, dword [esp + 0x2c]
mov dword [0x52126c], edi
mov byte [0x522cf4], bl
mov dword [0x51f254], eax
mov dword [esp + 0x78], edi
jmp 0x41da2f
mov dword [0x52126c], 0
xor ebx, ebx
test edx, edx
setne bl
mov dword [esp + 0x28], ebx
jmp 0x41d963
mov dword [ebp + 4], ecx
jmp 0x41df7a
mov dword [esp], 0x521280
call sym.zsh.exe_ztrdup
mov dword [esp + 0x34], eax
jmp 0x41d6f4
mov dword [esp], 0
call fcn.00467b90
mov dword [sym.zsh.exe_sigtrapped], 0
jmp 0x41d7c5
movzx eax, byte [0x522cf4]
mov dword [0x51f254], 3
mov byte [0x522cf4], 0
mov byte [esp + 0x24], al
jmp 0x41dbc6
call fcn.004129e0
jmp 0x41dadd
mov dword [esp], 0
call fcn.00467b90
jmp 0x41dabb
lea ebx, [ecx - 4]
jmp 0x41d9eb
mov dword [esp + 0x28], 1
jmp 0x41d96d
mov dword [esp + 0x28], 1
jmp 0x41dea6