Function at 0x42c96e
Capabilities:
Resolve function by parsing pe exports
Terminate process

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x94
push ebx
mov ebx, ecx
push esi
push edi
mov edi, edx
mov dword [esp + 0x28], ebx
mov esi, dword [ebx + 8]
xor edx, edx
mov dword [esp + 0x1c], edi
mov dword [esp + 0x10], esi
mov dword [esp + 0x20], edx
mov dword [esp + 0x14], edx
mov dword [esp + 0x24], edx
test esi, esi
jne 0x42c9a9
xor eax, eax
jmp 0x42d726
test edi, edi
je case.0x42c9d8.117
movzx ecx, byte [edi]
mov dword [esp + 0xc], ecx
cmp ecx, 0x6a
jbe 0x42d15d
lea eax, [ecx - 0x6b]
mov dword [esp + 0xc], ecx
cmp eax, 0x45
ja case.0x42c9d8.111
movzx eax, byte [eax + 0x42d78a]
jmp dword [eax*4 + 0x42d72e]
mov edi, dword [edi + 0xc]
mov dword [esp + 0x1c], edi
jmp 0x42c9a9
movsx eax, word [edi + 0x1e]
mov ecx, dword [edi + 0x24]
imul eax, eax, 0x18
add eax, dword [ecx + 0x1c]
cmp byte [ecx], dl
jne 0x42ca01
mov eax, dword [eax + 0x10]
jmp 0x42d726
cmp byte [ecx + 1], dl
je case.0x42c9d8.162
mov ebx, dword [ebp + 8]
push ebx
push dword [eax + 0xc]
push dword [ecx + 8]
push 0x5a
jmp 0x42d719
test byte [edi + 4], 8
mov ecx, dword [edi + 0x18]
je 0x42caaa
mov esi, dword [ebp + 8]
mov ecx, ebx
mov edx, dword [edi + 0xc]
push esi
call fcn.0042c96e
pop ecx
movsx ecx, word [edi + 0x1c]
mov dword [esp + 0x24], eax
test ecx, ecx
js 0x42ca51
mov eax, dword [edi + 0x28]
add ecx, ecx
mov eax, dword [eax + 4]
mov cl, byte [eax + ecx*8 + 0xd]
mov eax, dword [esp + 0x24]
jmp 0x42ca53
mov cl, 0x44
movsx edi, cl
cmp edi, 0x41
jle 0x42caa1
mov ebx, dword [esp + 0x10]
cmp eax, esi
je 0x42ca7a
push 0
push esi
push eax
push 0x4f
pop edx
mov ecx, ebx
call fcn.0041b8a1
mov eax, esi
add esp, 0xc
mov dword [esp + 0x24], eax
push 0
push 1
push eax
push 0x5b
pop edx
mov ecx, ebx
call fcn.0041b8a1
add esp, 0xc
mov edx, eax
lea eax, [edi*2 + 0x48955c]
mov ecx, ebx
push 0xffffffffffffffff
push eax
call fcn.0041bf48
pop ecx
pop ecx
mov eax, dword [esp + 0x24]
jmp 0x42d726
test ecx, ecx
jns 0x42cb0d
mov eax, dword [ebx + 0x34]
mov dword [esp + 0x24], eax
test eax, eax
jns 0x42cb0a
movzx eax, word [edi + 0x1c]
movsx ebx, ax
mov dword [esp + 0x1c], ebx
test ax, ax
js 0x42cb01
mov eax, dword [edi + 0x28]
mov ecx, ebx
add ecx, ecx
mov eax, dword [eax + 4]
cmp byte [eax + ecx*8 + 0xd], 0x45
jne 0x42cb01
mov eax, dword [esp + 0x1c]
mov ecx, esi
mov ebx, dword [ebp + 8]
sub eax, dword [esp + 0x24]
push edx
push ebx
push eax
push 0x4f
pop edx
call fcn.0041b8a1
add esp, 0xc
xor eax, eax
push eax
push eax
push ebx
push 0x54
jmp 0x42d719
sub ebx, dword [esp + 0x24]
jmp 0x42d724
lea ecx, [eax - 1]
push dword [ebp + 8]
movsx eax, word [edi + 0x1c]
mov edx, dword [edi + 0x28]
mov bl, byte [edi + 0x22]
push eax
push ecx
mov ecx, esi
call fcn.0042c826
add esp, 0xc
test bl, bl
je 0x42cb90
movzx edx, bl
mov ecx, esi
call fcn.0041bd6f
jmp 0x42cb90
mov esi, dword [ebp + 8]
push esi
push edx
mov edx, edi
mov ecx, ebx
call fcn.0042c72b
pop ecx
pop ecx
mov eax, esi
jmp 0x42d726
mov ecx, edi
call fcn.00429a16
mov ebx, dword [ebp + 8]
xor ecx, ecx
push edx
push ebx
mov eax, dword [eax + 8]
cmp byte [eax + 4], cl
sete cl
push ecx
push 0x46
jmp 0x42d719
mov ebx, dword [ebp + 8]
push ebx
push edx
mov edx, dword [edi + 8]
mov ecx, esi
call fcn.0042c6c8
pop ecx
pop ecx
jmp 0x42d724
push dword [edi + 8]
mov edx, dword [ebp + 8]
mov ecx, esi
call fcn.0041b92f
pop ecx
mov eax, dword [ebp + 8]
jmp 0x42d726
mov esi, dword [edi + 8]
lea ecx, [esi + 2]
call fcn.00407084
lea edx, [esi + 2]
mov esi, dword [esp + 0x10]
lea edi, [eax - 1]
mov ecx, dword [esi]
push edi
call fcn.00407f89
mov ebx, dword [ebp + 8]
pop ecx
push 0xfffffffffffffff9
push eax
mov eax, edi
mov ecx, esi
cdq
push 0
sub eax, edx
push ebx
sar eax, 1
push eax
push 0x4b
pop edx
call fcn.0041b9de
add esp, 0x14
jmp 0x42d724
movsx eax, word [edi + 0x1c]
mov ecx, esi
push edx
push dword [ebp + 8]
push eax
push 0x4c
pop edx
call fcn.0041b8a1
mov eax, dword [edi + 8]
add esp, 0xc
cmp byte [eax + 1], 0
je 0x42cb90
movsx edx, word [edi + 0x1c]
mov ecx, dword [ebx + 0xd0]
call fcn.004083ea
and dword [ecx], 0
mov edx, eax
push 0xffffffffffffffff
mov ecx, esi
call fcn.0041bfba
jmp 0x42cb8f
mov eax, dword [edi + 0x18]
jmp 0x42d726
mov eax, dword [edi + 0xc]
mov cl, byte [eax]
cmp cl, 0x96
jne 0x42cc39
mov esi, dword [ebp + 8]
mov edx, eax
push esi
push 1
jmp 0x42cb3d
cmp cl, 0x94
jne 0x42cc4c
mov ebx, dword [ebp + 8]
mov edx, dword [eax + 8]
push ebx
push 1
jmp 0x42cb74
lea eax, [esp + 0x14]
mov dword [esp + 0x78], edx
push eax
lea edx, [esp + 0x74]
mov byte [esp + 0x74], 0x96
mov ecx, ebx
mov dword [esp + 0x78], 0x4400
call fcn.0042d868
mov edx, dword [edi + 0xc]
mov esi, eax
pop ecx
lea eax, [esp + 0x24]
mov ecx, ebx
push eax
call fcn.0042d868
mov edi, dword [ebp + 8]
pop ecx
push edi
push esi
push eax
push 0x68
pop edx
mov ecx, dword [esp + 0x1c]
call fcn.0041b8a1
add esp, 0xc
jmp 0x42cd03
mov edx, dword [edi + 0xc]
lea eax, [esp + 0x14]
push eax
mov ecx, ebx
call fcn.0042d868
pop ecx
mov ecx, dword [edi + 0x10]
mov esi, eax
call fcn.00429a16
xor ecx, ecx
cmp byte [edi + 0x22], 0x2d
mov edi, dword [ebp + 8]
sete cl
mov eax, dword [eax + 8]
mov dl, byte [eax + 4]
xor eax, eax
test dl, dl
sete al
xor ecx, eax
xor eax, eax
push ecx
mov ecx, dword [esp + 0x14]
test dl, dl
setne al
push eax
push edi
push esi
push 0x58
pop edx
call fcn.0041bb07
add esp, 0x10
jmp 0x42cd03
mov eax, dword [edi + 0x24]
test eax, eax
jne 0x42cd31
push dword [edi + 8]
push str.misuse_of_aggregate:__s__
push ebx
call fcn.004071a7
add esp, 0xc
mov edi, dword [ebp + 8]
mov edx, dword [esp + 0x14]
mov ecx, ebx
call fcn.0042eda4
mov ecx, dword [esp + 0x24]
test ecx, ecx
je 0x42cd2a
mov al, byte [ebx + 0x13]
cmp al, 8
jae 0x42cd2a
movzx eax, al
mov dword [ebx + eax*4 + 0x8c], ecx
inc byte [ebx + 0x13]
mov eax, edi
jmp 0x42d726
movsx ecx, word [edi + 0x1e]
mov eax, dword [eax + 0x28]
add ecx, ecx
mov eax, dword [eax + ecx*8 + 8]
jmp 0x42d726
test dword [edi + 4], 0x1000000
mov eax, dword [ebx]
mov dword [esp + 0x20], eax
mov dword [esp + 0x34], edx
mov dword [esp + 0x30], edx
mov al, byte [eax + 0x4e]
mov byte [esp + 0x2c], al
je 0x42cd6c
mov eax, dword [edi + 0x28]
mov eax, dword [eax + 0x38]
jmp 0x42d726
cmp byte [ebx + 0x17], dl
je 0x42cd94
push edx
push 2
pop edx
mov ecx, edi
call fcn.0042b205
pop ecx
test eax, eax
je 0x42cd92
push 0xffffffffffffffff
mov edx, edi
mov ecx, ebx
call fcn.0042d7d0
pop ecx
jmp 0x42d726
xor edx, edx
test dword [edi + 4], 0x4000
je 0x42ce63
mov dword [esp + 0x18], edx
mov eax, edx
mov ecx, dword [edi + 8]
push edx
push dword [esp + 0x30]
mov dword [esp + 0x44], ecx
mov edx, ecx
mov ecx, dword [esp + 0x28]
push eax
mov dword [esp + 0x18], eax
call fcn.00437499
mov ecx, eax
add esp, 0xc
mov dword [esp + 0x2c], ecx
test ecx, ecx
je 0x42d063
xor eax, eax
cmp dword [ecx + 0x14], eax
jne 0x42d063
mov ecx, dword [ecx + 4]
test ecx, 0x200
je 0x42ce79
dec dword [ebx + 0x38]
mov ecx, ebx
mov eax, dword [ebx + 0x38]
mov edi, dword [ebp + 8]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x18]
push edi
mov edx, dword [eax + 4]
call fcn.0042d8e1
mov eax, dword [esp + 0x10]
pop ecx
cmp eax, 1
jle 0x42ce53
mov ecx, dword [esp + 0x18]
add ecx, 0x1c
dec eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x28], eax
push 0
push dword [esp + 0x24]
mov ecx, esi
push edi
push 0x33
pop edx
call fcn.0041b8a1
mov edx, dword [esp + 0x28]
add esp, 0xc
mov ecx, ebx
mov edx, dword [edx]
push edi
call fcn.0042d8e1
add dword [esp + 0x20], 0x18
sub dword [esp + 0x2c], 1
pop ecx
jne 0x42ce24
mov edx, dword [esp + 0x20]
mov ecx, esi
call fcn.0041bba0
jmp 0x42cd03
mov ecx, dword [edi + 0x14]
mov dword [esp + 0x18], ecx
test ecx, ecx
je 0x42cda5
mov eax, dword [ecx]
jmp 0x42cda7
test ecx, 0x400
je 0x42ce97
mov eax, dword [esp + 0x18]
mov ecx, ebx
push dword [ebp + 8]
mov edx, dword [eax + 4]
call fcn.0042c96e
jmp 0x42cd8c
mov ecx, dword [esp + 0xc]
test ecx, ecx
jle 0x42cf15
mov edx, dword [esp + 0x18]
mov edi, eax
mov esi, dword [esp + 0x2c]
add edx, 4
mov dword [esp + 0x14], edx
cmp edi, 0x20
jae 0x42cedc
mov ecx, dword [esp + 0x14]
xor edx, edx
push eax
inc edx
mov ecx, dword [ecx]
call fcn.0042b205
mov edx, dword [esp + 0x18]
pop ecx
mov ecx, dword [esp + 0xc]
test eax, eax
je 0x42cedc
mov eax, dword [esp + 0x34]
bts eax, edi
mov dword [esp + 0x34], eax
test byte [esi + 4], 0x20
je 0x42cefe
cmp dword [esp + 0x30], 0
jne 0x42cefe
mov edx, dword [edx]
mov ecx, ebx
call fcn.00429a51
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x14]
mov dword [esp + 0x30], eax
inc edi
add edx, 0x18
mov dword [esp + 0x14], edx
push 0
pop eax
cmp edi, ecx
jl 0x42ceb0
mov edi, dword [esp + 0x1c]
mov esi, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
test edx, edx
je 0x42cf97
cmp dword [esp + 0x34], 0
je 0x42cf3d
mov eax, dword [ebx + 0x2c]
lea edi, [eax + 1]
add eax, ecx
mov dword [esp + 0x14], edi
mov edi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov dword [ebx + 0x2c], eax
jmp 0x42cf50
mov edx, ecx
mov ecx, ebx
call fcn.0042edbd
mov edx, dword [esp + 0x18]
mov ecx, eax
mov dword [esp + 0x14], ecx
mov eax, dword [esp + 0x2c]
test byte [eax + 4], 0xc0
je 0x42cf82
mov ebx, dword [edx + 4]
mov bl, byte [ebx]
mov byte [esp + 0x3b], bl
cmp bl, 0xa2
mov ebx, dword [esp + 0x28]
je 0x42cf73
cmp byte [esp + 0x3b], 0xa4
jne 0x42cf82
mov esi, dword [edx + 4]
mov al, byte [eax + 4]
and al, 0xc0
mov byte [esi + 0x22], al
mov esi, dword [esp + 0x10]
push 3
push 0
push ecx
mov ecx, ebx
call fcn.0042d99e
mov edx, dword [esp + 0x24]
add esp, 0xc
jmp 0x42cf9b
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0xc]
cmp eax, 2
jl 0x42cfc1
test byte [edi + 4], 0x80
je 0x42cfc5
push dword [edx + 0x1c]
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x24]
push eax
call fcn.0044d56d
pop ecx
pop ecx
mov edi, eax
jmp 0x42cfce
test eax, eax
jle 0x42cfca
push dword [edx + 4]
jmp 0x42cfad
mov edi, dword [esp + 0x2c]
test byte [edi + 4], 0x20
je 0x42d009
cmp dword [esp + 0x30], 0
jne 0x42cfe6
mov eax, dword [esp + 0x20]
mov eax, dword [eax + 8]
mov dword [esp + 0x30], eax
xor eax, eax
mov ecx, esi
push eax
push eax
push eax
push 0x52
pop edx
call fcn.0041b8a1
add esp, 0xc
mov edx, eax
mov ecx, esi
push 0xfffffffffffffffe
push dword [esp + 0x34]
call fcn.0041bf48
pop ecx
pop ecx
mov edx, dword [ebx + 0x34]
mov ecx, esi
push 0xfffffffffffffff8
push edi
push dword [ebp + 8]
mov edi, dword [esp + 0x20]
neg edx
push edi
push dword [esp + 0x44]
sbb edx, edx
add edx, 0x3f
call fcn.0041b9de
mov eax, dword [esp + 0x20]
add esp, 0x14
movzx edx, al
mov ecx, esi
call fcn.0041bd6f
mov eax, dword [esp + 0xc]
test eax, eax
je 0x42cb90
cmp dword [esp + 0x34], 0
jne 0x42cb90
push eax
mov edx, edi
mov ecx, ebx
call fcn.0042edf3
add esp, 4
jmp 0x42cb90
push dword [esp + 0x3c]
push str.unknown_function:__s__
jmp 0x42ccf7
cmp ecx, 0x86
jne 0x42d218
mov eax, dword [edi + 0x14]
mov eax, dword [eax]
cmp dword [eax], 1
je 0x42d218
push 1
push dword [eax]
push str.sub_select_returns__d_columns___expected__d
push ebx
call fcn.004071a7
add esp, 0x10
jmp 0x42cd00
mov ecx, dword [edi + 0xc]
cmp dword [ecx + 0x18], edx
jne 0x42d0be
mov edx, ecx
mov ecx, ebx
call fcn.0042beea
mov ecx, eax
mov eax, dword [edi + 0xc]
mov dword [eax + 0x18], ecx
mov ecx, dword [edi + 0xc]
mov edx, dword [edi + 0x18]
test edx, edx
je 0x42d0e1
call fcn.00429ce4
cmp edx, eax
je 0x42d0e1
push eax
push edx
push str._d_columns_assigned__d_values
push ebx
call fcn.004071a7
mov ecx, dword [edi + 0xc]
add esp, 0x10
movsx eax, word [edi + 0x1c]
add eax, dword [ecx + 0x18]
jmp 0x42d726
push str.row_value_misused
push ebx
call fcn.004071a7
pop ecx
pop ecx
jmp 0x42cd00
mov bl, byte [ebx + 0x17]
mov ecx, esi
push edx
push edx
push dword [edi + 0x18]
push 0x15
pop edx
call fcn.0041b8a1
mov esi, eax
add esp, 0xc
mov eax, dword [esp + 0x28]
mov ecx, eax
push dword [ebp + 8]
mov byte [eax + 0x17], 0
mov edx, dword [edi + 0xc]
call fcn.0042c96e
pop ecx
mov ecx, dword [esp + 0x28]
mov edx, esi
mov edi, eax
mov byte [ecx + 0x17], bl
mov ebx, dword [esp + 0x10]
mov ecx, ebx
call fcn.0041c004
mov ecx, dword [ebx + 0x6c]
mov edx, esi
mov dword [eax + 8], ecx
mov ecx, ebx
call fcn.0041c004
mov ebx, dword [esp + 0x28]
mov dword [eax + 0xc], edi
jmp 0x42cd03
je case.0x42c9d8.107
cmp ecx, 0x36
ja 0x42d380
je 0x42d285
cmp ecx, 0x30
ja 0x42d264
je 0x42d24d
mov eax, ecx
sub eax, 0x13
je case.0x42c9d8.110
sub eax, 1
je 0x42d218
sub eax, 0x10
je 0x42d1d2
sub eax, 7
je case.0x42c9d8.107
sub eax, 1
je case.0x42c9d8.107
sub eax, 1
jne case.0x42c9d8.111
xor eax, eax
mov edx, 0x80
cmp ecx, 0x2d
mov dword [esp + 0x20], edx
sete al
lea esi, [eax + 0x34]
mov dword [esp + 0xc], esi
jmp 0x42d289
mov esi, dword [ebp + 8]
mov ecx, ebx
mov edx, dword [edi + 0xc]
push esi
call fcn.0042c96e
mov ebx, eax
pop ecx
cmp ebx, esi
je 0x42d1fc
mov ecx, dword [esp + 0x10]
push 0
push esi
push ebx
push 0x4f
pop edx
call fcn.0041b8a1
add esp, 0xc
mov ebx, esi
mov ecx, dword [edi + 8]
xor edx, edx
call fcn.004333f9
mov ecx, dword [esp + 0x10]
push 0
movsx eax, al
push eax
push esi
push 0x55
jmp 0x42d71b
mov edx, edi
mov ecx, ebx
call fcn.0042beea
jmp 0x42d726
mov edx, dword [edi + 0xc]
lea eax, [esp + 0x14]
push eax
mov ecx, ebx
call fcn.0042d868
mov edi, dword [ebp + 8]
mov edx, dword [esp + 0x10]
pop ecx
push edi
push eax
mov ecx, esi
call fcn.0041b90b
pop ecx
pop ecx
jmp 0x42cd03
mov esi, dword [ebp + 8]
mov ecx, ebx
push edx
push edx
push esi
mov edx, edi
call fcn.0042dad4
add esp, 0xc
jmp 0x42cb46
sub ecx, 0x31
je 0x42d310
sub ecx, 1
je 0x42d2b1
sub ecx, 1
je 0x42d2b1
sub ecx, 1
je 0x42d285
sub ecx, 1
jne case.0x42c9d8.111
mov esi, dword [esp + 0xc]
mov ecx, dword [edi + 0xc]
mov dword [esp + 0x3c], ecx
call fcn.00429ce4
cmp eax, 1
jle 0x42d48b
push edx
push esi
push dword [ebp + 8]
mov edx, edi
mov ecx, ebx
call fcn.00429de8
jmp 0x42ccfd
push edx
push dword [ebp + 8]
mov ecx, esi
push 1
push 0x46
pop edx
call fcn.0041b8a1
mov edx, dword [edi + 0xc]
lea eax, [esp + 0x20]
add esp, 0xc
mov ecx, ebx
push eax
call fcn.0042d868
mov edx, dword [esp + 0x10]
pop ecx
push eax
mov ecx, esi
call fcn.0041b8fa
mov edi, dword [ebp + 8]
mov esi, eax
pop ecx
mov ecx, dword [esp + 0x10]
xor eax, eax
push eax
push edi
push eax
push 0x46
pop edx
call fcn.0041b8a1
mov ecx, dword [esp + 0x1c]
add esp, 0xc
mov edx, esi
call fcn.0041c004
mov ecx, dword [ecx + 0x6c]
mov dword [eax + 8], ecx
jmp 0x42cd03
mov esi, dword [ebx + 0x38]
mov ecx, dword [esp + 0x10]
dec esi
push edx
push dword [ebp + 8]
push edx
push 0x49
lea edi, [esi - 1]
pop edx
mov dword [ebx + 0x38], edi
call fcn.0041b8a1
mov edx, dword [esp + 0x28]
add esp, 0xc
mov ecx, ebx
push edi
push esi
call fcn.0042c15e
mov ecx, dword [esp + 0x18]
xor ebx, ebx
push ebx
push dword [ebp + 8]
push 1
push 0x46
pop edx
call fcn.0041b8a1
add esp, 0x14
mov edx, esi
mov esi, dword [esp + 0x10]
mov ecx, esi
call fcn.0041bba0
push ebx
push ebx
mov ebx, dword [ebp + 8]
mov ecx, esi
push ebx
push 0x53
pop edx
call fcn.0041b8a1
add esp, 0xc
mov edx, edi
mov ecx, esi
call fcn.0041bba0
jmp 0x42d724
cmp ecx, 0x64
ja 0x42d4d3
je case.0x42c9d8.107
sub ecx, 0x37
je 0x42d285
sub ecx, 1
je 0x42d285
sub ecx, 1
je 0x42d285
sub ecx, 0xe
je 0x42d41d
sub ecx, 6
je 0x42d3bc
sub ecx, 0x16
jmp 0x42d4fa
mov eax, dword [edi + 0x28]
push edx
push dword [ebp + 8]
mov dword [esp + 0x44], eax
mov edx, 0x95
movsx ecx, word [eax + 0x2a]
movsx eax, word [edi + 0x1c]
inc ecx
imul ecx, dword [edi + 0x18]
inc ecx
add eax, ecx
mov ecx, esi
push eax
call fcn.0041b8a1
movzx eax, word [edi + 0x1c]
add esp, 0xc
test ax, ax
js 0x42cd00
mov edi, dword [ebp + 8]
movsx ecx, ax
mov eax, dword [esp + 0x3c]
add ecx, ecx
mov eax, dword [eax + 4]
cmp byte [eax + ecx*8 + 0xd], 0x45
jne 0x42cd03
xor eax, eax
mov ecx, esi
push eax
push eax
push edi
push 0x54
pop edx
jmp 0x42cc8d
cmp dword [ebx + 0x70], edx
jne 0x42d434
push str.RAISE___may_only_be_used_within_a_trigger_program
push ebx
call fcn.004071a7
pop ecx
pop ecx
jmp 0x42c9a2
mov al, byte [edi + 1]
cmp al, 2
jne 0x42d44b
cmp dword [ebx + 0x6c], edx
mov eax, ebx
cmovne eax, dword [ebx + 0x6c]
mov byte [eax + 0x15], 1
mov al, byte [edi + 1]
mov edi, dword [edi + 8]
push edx
cmp al, 4
jne 0x42d474
push 4
push edx
push 0x45
pop edx
mov ecx, esi
call fcn.0041b8a1
add esp, 0xc
mov edx, eax
mov ecx, esi
push 0
push edi
call fcn.0041bf48
jmp 0x42d0f8
push edx
movsx eax, al
mov edx, 0x713
push edi
push eax
mov ecx, ebx
call fcn.00436ba9
jmp 0x42d09a
lea eax, [esp + 0x14]
mov edx, ecx
push eax
mov ecx, ebx
call fcn.0042d868
mov edx, dword [edi + 0x10]
mov esi, eax
pop ecx
lea eax, [esp + 0x24]
mov ecx, ebx
push eax
call fcn.0042d868
mov edx, dword [esp + 0x40]
pop ecx
mov ecx, dword [esp + 0x20]
or ecx, 0x20
push ecx
push dword [ebp + 8]
mov ecx, ebx
push eax
push esi
push dword [esp + 0x1c]
push dword [edi + 0x10]
call fcn.00429c84
add esp, 0x18
jmp 0x42cd00
sub ecx, 0x65
je case.0x42c9d8.107
sub ecx, 1
je case.0x42c9d8.107
sub ecx, 1
je case.0x42c9d8.107
sub ecx, 1
je case.0x42c9d8.107
sub ecx, 1
je case.0x42c9d8.107
mov ecx, dword [edi + 0x14]
mov eax, dword [ebx]
mov dword [esp + 0x30], ecx
add ecx, 4
mov dword [esp + 0x18], ecx
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x28], edx
mov dword [esp + 0x2c], edx
mov dword [esp + 0xc], eax
mov ecx, dword [ecx]
dec dword [ebx + 0x38]
mov dword [esp + 0x34], ecx
mov ecx, dword [ebx + 0x38]
mov dword [esp + 0x20], ecx
mov ecx, dword [edi + 0xc]
mov dword [esp + 0x3c], ecx
test ecx, ecx
je 0x42d5c7
push edx
push edx
mov edx, ecx
mov ecx, eax
call fcn.0042a5ca
mov edi, eax
mov eax, dword [esp + 0x14]
pop ecx
pop ecx
mov dword [esp + 0x2c], edi
cmp byte [eax + 0x51], 0
je 0x42d572
test edi, edi
je 0x42cd00
mov edx, edi
mov ecx, eax
call fcn.0042a441
jmp 0x42cd00
lea eax, [esp + 0x14]
mov edx, edi
push eax
mov ecx, ebx
call fcn.0042c8e9
pop ecx
mov ecx, edi
mov edx, eax
call fcn.00429a2b
push 0x30
push 0
mov cl, byte [eax]
and dword [eax + 4], 0xffffefff
mov byte [eax + 0x22], cl
mov byte [eax], 0xab
mov dword [eax + 0x18], edx
lea eax, [esp + 0x48]
push eax
call fcn.00461a70
mov ecx, dword [esp + 0x48]
lea edx, [esp + 0x4c]
add esp, 0xc
mov byte [esp + 0x40], 0x35
and dword [esp + 0x14], 0
mov dword [esp + 0x4c], edi
mov dword [esp + 0x28], edx
mov eax, dword [esp + 0x34]
mov edi, dword [ebp + 8]
dec eax
test eax, eax
jle 0x42d693
dec eax
shr eax, 1
inc eax
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x18]
test ecx, ecx
je 0x42d642
mov esi, dword [ebx + 0x38]
mov eax, dword [eax]
dec esi
push 0x10
push esi
push edx
push ebx
mov dword [esp + 0x60], eax
mov dword [ebx + 0x38], esi
call fcn.0042df3a
mov ecx, dword [esp + 0x28]
push edi
mov edx, dword [ecx + 0x18]
mov ecx, ebx
call fcn.0042d8e1
mov edx, dword [esp + 0x34]
add esp, 0x14
mov ecx, dword [esp + 0x10]
call fcn.0041b91e
mov edx, esi
mov esi, dword [esp + 0x10]
mov ecx, esi
call fcn.0041bba0
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x28]
add eax, 0x30
sub dword [esp + 0x1c], 1
mov dword [esp + 0x18], eax
jne 0x42d5e7
jmp 0x42d693
mov esi, dword [ebx + 0x38]
mov eax, dword [eax]
dec esi
push 0x10
push esi
push eax
push ebx
mov dword [ebx + 0x38], esi
call fcn.0042df3a
mov ecx, dword [esp + 0x28]
push edi
mov edx, dword [ecx + 0x18]
mov ecx, ebx
call fcn.0042d8e1
mov edx, dword [esp + 0x34]
add esp, 0x14
mov ecx, dword [esp + 0x10]
call fcn.0041b91e
mov edx, esi
mov esi, dword [esp + 0x10]
mov ecx, esi
call fcn.0041bba0
mov eax, dword [esp + 0x18]
add eax, 0x30
sub dword [esp + 0x1c], 1
mov dword [esp + 0x18], eax
jne 0x42d642
mov ecx, dword [esp + 0x34]
test cl, 1
je 0x42d6b2
mov eax, dword [esp + 0x30]
imul edx, ecx, 0x18
mov ecx, ebx
push edi
mov edx, dword [edx + eax - 0x14]
call fcn.0042d8e1
pop ecx
jmp 0x42d6c4
xor eax, eax
mov ecx, esi
push eax
push edi
push eax
push 0x49
pop edx
call fcn.0041b8a1
add esp, 0xc
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x42ce53
mov ecx, dword [esp + 0xc]
mov edx, eax
call fcn.0042a441
jmp 0x42ce53
mov edx, dword [edi + 0xc]
lea eax, [esp + 0x14]
push eax
mov ecx, ebx
call fcn.0042d868
mov edx, dword [edi + 0x10]
mov esi, eax
pop ecx
lea eax, [esp + 0x24]
mov ecx, ebx
push eax
call fcn.0042d868
mov edi, dword [ebp + 8]
mov edx, dword [esp + 0x10]
pop ecx
push edi
push esi
push eax
jmp 0x42cc89
mov ebx, dword [ebp + 8]
push edx
push ebx
push edx
push 0x49
mov ecx, esi
pop edx
call fcn.0041b8a1
add esp, 0xc
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret