Function at 0x407aec
Capabilities:
Terminate process

Disassembly:
sub esp, 0xb7c
mov eax, dword [0x51d678]
push ebx
push ebp
mov dword [esp + 0xc], eax
mov al, byte [0x51c36c]
test al, al
push esi
push edi
mov edi, dword [esp + 0xb90]
mov byte [esp + 0x13], 0
jne 0x407b37
push 0x400
push 0x400
push 0x435d58
push 0x51c338
call fcn.0040cc8c
add esp, 0x10
mov byte [0x51c36c], al
jmp 0x407b49
push 0x435d58
push 0x51c338
call fcn.0040cd2c
add esp, 8
mov al, byte [0x51c353]
test al, al
mov al, byte [0x51c363]
je 0x407b6f
test al, al
je 0x407b65
mov dword [esp + 0x18], 0x437238
jmp 0x407b83
mov dword [esp + 0x18], 0x43722c
jmp 0x407b83
test al, al
mov dword [esp + 0x18], 0x437220
jne 0x407b83
mov dword [esp + 0x18], 0x435d58
mov al, byte [0x51c34c]
test al, al
je 0x407b9f
push edi
push 0x4371f0
push 0x51ae68
call fcn.004291d4
add esp, 0xc
mov al, byte [0x51c354]
test al, al
jne 0x407bb5
mov al, byte [0x51c351]
test al, al
jne 0x407bb5
xor eax, eax
jmp 0x407bba
mov eax, 1
push eax
push 0x4371cc
lea ecx, [esp + 0x180]
push 0x200
push ecx
call fcn.004145fc
mov cl, byte [fcn.00442055]
add esp, 0x10
test cl, cl
jne 0x407bf4
lea edx, [esp + eax + 0x178]
push 0x437168
push edx
call fcn.0041464c
add esp, 8
mov ebx, dword [0x51c3a4]
mov cl, byte [edi]
and ebx, 0x47c
neg ebx
sbb bl, bl
and bl, 0xc2
add bl, 0x60
test cl, cl
mov esi, edi
mov byte [esp + 0x70], bl
lea eax, [esp + 0x71]
je 0x407c2e
mov edi, edi
cmp cl, bl
jne 0x407c23
mov byte [eax], bl
inc eax
mov byte [eax], cl
mov cl, byte [esi + 1]
inc eax
inc esi
test cl, cl
jne 0x407c1c
mov byte [eax], bl
mov byte [eax + 1], 0
mov al, byte [0x51c354]
test al, al
mov esi, edi
jne 0x407c4e
mov ecx, edi
call fcn.0040511c
test al, al
jne 0x407c4e
mov ebp, edi
jmp 0x407c81
mov cl, byte [edi]
test cl, cl
mov byte [esp + 0xf4], bl
lea eax, [esp + 0xf5]
je 0x407c74
cmp cl, bl
jne 0x407c69
mov byte [eax], bl
inc eax
mov byte [eax], cl
mov cl, byte [esi + 1]
inc eax
inc esi
test cl, cl
jne 0x407c62
mov byte [eax], bl
mov byte [eax + 1], 0
lea ebp, [esp + 0xf4]
mov al, byte [0x51c362]
test al, al
je 0x407c96
mov eax, ebp
call fcn.0040572c
mov dword [0x51c398], eax
mov al, byte [0x51c35b]
test al, al
jne 0x407ce9
mov esi, dword [case.0x6502ec.0]
lea eax, [esp + 0x178]
push eax
push esi
call fcn.0041330c
test eax, eax
je 0x407dc6
push esi
call fcn.004115dc
push eax
push esi
call fcn.004115ec
mov edx, dword [0x51c3d4]
push eax
lea ecx, [esp + 0x180]
push ecx
push edx
push 0
push 0x435ff0
push 0
call fcn.0040c8ac
add esp, 0x1c
mov al, byte [0x51c34c]
test al, al
je 0x407d17
mov edx, dword [case.0x6502ec.0]
push edx
call fcn.004115ec
push eax
mov eax, dword [0x51c3d4]
push eax
push 0x43712c
push 0x51ae68
call fcn.004291d4
add esp, 0x10
lea ecx, [esp + 0x70]
push ecx
push 0x437118
lea edx, [esp + 0x180]
push 0x200
push edx
call fcn.004145fc
mov esi, dword [case.0x6502ec.0]
add esp, 0x10
lea eax, [esp + 0x178]
push eax
push esi
call fcn.0041330c
test eax, eax
jne 0x407d62
push esi
call fcn.004110ec
mov ebx, eax
test ebx, ebx
mov dword [esp + 0x1c], ebx
jne 0x40815d
push esi
call fcn.004115dc
push eax
push esi
call fcn.004115ec
mov edx, dword [0x51c3d4]
push eax
lea ecx, [esp + 0x180]
push ecx
push edx
push 0
push 0x435ff0
push 0
call fcn.0040c8ac
mov eax, dword [0x51c3b4]
add esp, 0x1c
test eax, eax
jne 0x407da3
mov dword [0x51c3b4], 2
mov al, byte [0x51c34f]
test al, al
jne 0x4085cc
mov eax, dword [case.0x6502ec.0]
test eax, eax
je 0x407dbf
push eax
call fcn.00410f2c
push 2
call fcn.00429194
mov al, byte [0x51c34d]
test al, al
jne 0x407f34
lea eax, [esp + 0x70]
push eax
push 0x437100
lea ecx, [esp + 0x380]
push 0x214
push ecx
call fcn.004145fc
mov esi, dword [case.0x6502ec.0]
add esp, 0x10
lea edx, [esp + 0x378]
push edx
push esi
call fcn.0041330c
test eax, eax
je 0x407e4f
push esi
call fcn.004115dc
push eax
push esi
call fcn.004115ec
mov ecx, dword [0x51c3d4]
push eax
lea eax, [esp + 0x380]
push eax
push ecx
push 0
push 0x435ff0
push 0
call fcn.0040c8ac
add esp, 0x1c
mov esi, 2
call fcn.004050ec
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xb7c
ret
mov eax, dword [0x51c37c]
test eax, eax
je 0x407eb2
push 0
push eax
lea edx, [esp + 0x594]
push edx
call fcn.0040d32c
add esp, 0xc
push 0x10
push 1
push 4
push 0x4370f8
lea eax, [esp + 0x59c]
push eax
lea ecx, [esp + 0x7a0]
push edi
push ecx
call fcn.0040cfac
add esp, 0x14
push eax
call fcn.0040cb4c
add esp, 0xc
test eax, eax
mov dword [esp + 0x14], eax
je 0x4085c2
mov edi, dword [esp + 0xb94]
mov esi, eax
call fcn.0040590c
mov al, byte [0x51c35b]
test al, al
mov edi, dword [esp + 0x14]
jne 0x407ee1
mov al, byte [case.0x7aa0c9.35]
test al, al
je 0x407ee1
lea edx, [esp + 0x70]
push edx
push 0x4370cc
push edi
call fcn.004291d4
push edi
call fcn.004058ac
add esp, 0x10
mov al, byte [0x442053]
test al, al
je 0x407eff
push ebp
push 0x4370b0
push edi
call fcn.004291d4
push edi
call fcn.004058ac
add esp, 0x10
mov eax, dword [case.0x6502ec.0]
push eax
call fcn.004110ec
mov esi, eax
push esi
mov dword [esp + 0x20], esi
call fcn.00412b7c
mov ecx, dword [eax + 4]
push ecx
push 0x4370a8
push edi
call fcn.004291d4
push edi
call fcn.004058ac
add esp, 0x10
push esi
call fcn.0041042c
lea edx, [esp + 0x70]
push edx
push 0x437118
lea eax, [esp + 0x180]
push 0x200
push eax
call fcn.004145fc
mov esi, dword [case.0x6502ec.0]
add esp, 0x10
lea ebx, [esp + 0x178]
lea edi, [esp + 0x1c]
call fcn.0040509c
test eax, eax
je 0x407f9c
mov eax, dword [0x51c37c]
test eax, eax
je 0x407f85
mov ecx, dword [esp + 0x14]
push 0x10
push ecx
call fcn.0040ca3c
add esp, 8
mov esi, 2
call fcn.004050ec
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xb7c
ret
push 7
push 0x4370a0
push 0x51c338
call fcn.0040ce0c
mov edx, dword [esp + 0x24]
push edx
push 0x51c338
call fcn.0040ceac
push 5
push 0x437098
push 0x51c338
call fcn.0040ce0c
push ebp
push 0x51c338
call fcn.0040ceac
mov al, byte [0x51c364]
add esp, 0x28
test al, al
je 0x407fed
push 2
push 0x437094
jmp 0x408011
push 8
push 0x437088
push 0x51c338
call fcn.0040ce0c
mov al, byte [0x442051]
add esp, 0xc
test al, al
jne 0x40801e
push 1
push 0x436aa4
push 0x51c338
call fcn.0040ce0c
add esp, 0xc
mov edi, dword [esp + 0x1c]
push edi
call fcn.00412b7c
mov esi, eax
test esi, esi
je 0x4080db
mov al, byte [esp + 0x13]
test al, al
je 0x408057
mov al, byte [0x51c364]
test al, al
je 0x408057
push 2
push 0x437084
push 0x51c338
call fcn.0040ce0c
add esp, 0xc
mov al, byte [0x51c364]
test al, al
mov byte [esp + 0x13], 1
je 0x4080cb
mov ebx, dword [0x51c3a4]
mov al, byte [0x51c354]
mov esi, dword [esi]
and ebx, 0x47c
neg ebx
sbb bl, bl
and bl, 0xc2
add bl, 0x60
test al, al
jne 0x408091
mov ecx, esi
call fcn.0040511c
test al, al
je 0x4080bd
mov byte [esp + 0x2c], bl
mov cl, byte [esi]
test cl, cl
lea eax, [esp + 0x2d]
je 0x4080b3
cmp cl, bl
jne 0x4080a6
mov byte [eax], bl
inc eax
mov cl, byte [esi]
mov byte [eax], cl
mov cl, byte [esi + 1]
inc eax
inc esi
test cl, cl
jne 0x40809f
mov byte [eax], bl
mov byte [eax + 1], 0
lea esi, [esp + 0x2c]
push esi
push 0x51c338
call fcn.0040ceac
add esp, 8
push edi
call fcn.00412b7c
mov esi, eax
test esi, esi
jne 0x408032
push edi
call fcn.004115bc
push edi
mov dword [esp + 0x24], eax
call fcn.0041042c
mov ebp, dword [esp + 0x14]
mov al, byte [0x51c364]
test al, al
je 0x408129
push 9
push 0x437078
push 0x51c338
call fcn.0040ce0c
mov al, byte [0x442051]
add esp, 0xc
test al, al
jne 0x408129
push 1
push 0x436aa4
push 0x51c338
call fcn.0040ce0c
add esp, 0xc
cmp ebp, dword [0x51d678]
je 0x40814e
push ebp
push 0x436570
call fcn.004294cd
mov esi, ebp
call fcn.00405a4c
push 0x10
push ebp
call fcn.0040ca3c
add esp, 0x10
mov eax, dword [esp + 0x20]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xb7c
ret
mov al, byte [0x51c34d]
test al, al
jne 0x40825f
mov eax, dword [0x51c37c]
test eax, eax
je 0x4081cd
push 0
push eax
lea eax, [esp + 0x594]
push eax
call fcn.0040d32c
add esp, 0xc
push 0x10
push 1
push 4
push 0x4370f8
lea ecx, [esp + 0x59c]
push ecx
lea edx, [esp + 0x7a0]
push edi
push edx
call fcn.0040cfac
add esp, 0x14
push eax
call fcn.0040cb4c
add esp, 0xc
test eax, eax
mov dword [esp + 0x14], eax
je 0x4085c2
mov edi, dword [esp + 0xb94]
mov esi, eax
call fcn.0040590c
mov al, byte [0x51c35b]
test al, al
mov esi, dword [esp + 0x14]
jne 0x4081f6
mov al, byte [case.0x7aa0c9.35]
test al, al
je 0x4081f6
lea eax, [esp + 0x70]
push eax
push 0x4370cc
push esi
call fcn.004291d4
add esp, 0xc
mov al, byte [0x442053]
test al, al
je 0x408212
lea ecx, [esp + 0x70]
push ecx
push 0x4370b0
push esi
call fcn.004291d4
add esp, 0xc
mov al, byte [0x51c35b]
test al, al
jne 0x408230
lea edx, [esp + 0x70]
push edx
push 0x437064
push esi
call fcn.004291d4
add esp, 0xc
jmp 0x408256
mov edi, dword [esp + 0xb90]
mov ecx, dword [esp + 0x14]
push 0x436570
push 0x43704c
mov eax, 0x436ac4
call fcn.0040659c
mov esi, dword [esp + 0x1c]
add esp, 8
push esi
call fcn.004058ac
add esp, 4
push 7
push 0x4370a0
push 0x51c338
call fcn.0040ce0c
mov eax, dword [esp + 0x24]
push eax
push 0x51c338
call fcn.0040ceac
push 5
push 0x437098
push 0x51c338
call fcn.0040ce0c
lea ecx, [esp + 0x90]
push ecx
push 0x51c338
call fcn.0040ceac
mov al, byte [0x51c364]
add esp, 0x28
test al, al
je 0x4082b7
push 2
push 0x437094
jmp 0x4082db
push 8
push 0x437088
push 0x51c338
call fcn.0040ce0c
mov al, byte [0x442051]
add esp, 0xc
test al, al
jne 0x4082e8
push 1
push 0x436aa4
push 0x51c338
call fcn.0040ce0c
add esp, 0xc
push ebx
call fcn.00412b7c
mov ebp, eax
test ebp, ebp
mov dword [esp + 0x18], ebp
je 0x408550
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x1c]
push ebx
call fcn.0041344c
mov dword [esp + 0x20], eax
mov al, byte [esp + 0x13]
test al, al
je 0x408359
mov al, byte [0x51c35b]
test al, al
jne 0x40833c
mov al, byte [0x51c34d]
test al, al
jne 0x40833c
push edi
push 0x437048
call fcn.004294cd
push edi
call fcn.004058ac
add esp, 0xc
mov al, byte [0x51c364]
test al, al
je 0x408359
push 2
push 0x437084
push 0x51c338
call fcn.0040ce0c
add esp, 0xc
mov al, byte [0x51c364]
test al, al
mov byte [esp + 0x13], 1
je 0x4083d2
mov ebx, dword [0x51c3a4]
mov al, byte [0x51c354]
mov esi, dword [ebp]
and ebx, 0x47c
neg ebx
sbb bl, bl
and bl, 0xc2
add bl, 0x60
test al, al
jne 0x408394
mov ecx, esi
call fcn.0040511c
test al, al
je 0x4083c0
mov byte [esp + 0x2c], bl
mov cl, byte [esi]
test cl, cl
lea eax, [esp + 0x2d]
je 0x4083b6
cmp cl, bl
jne 0x4083a9
mov byte [eax], bl
inc eax
mov dl, byte [esi]
mov byte [eax], dl
mov cl, byte [esi + 1]
inc eax
inc esi
test cl, cl
jne 0x4083a2
mov byte [eax], bl
mov byte [eax + 1], 0
lea esi, [esp + 0x2c]
push esi
push 0x51c338
call fcn.0040ceac
mov ebx, dword [esp + 0x24]
add esp, 8
mov al, byte [0x51c34d]
test al, al
jne 0x40853c
mov al, byte [0x51c35b]
test al, al
je 0x408401
lea eax, [esp + 0x18]
push eax
push 0x437040
mov eax, edi
call fcn.0040667c
add esp, 8
jmp 0x40853c
mov al, byte [0x51c351]
mov ebx, dword [0x51c3a4]
mov esi, dword [ebp]
and ebx, 0x47c
test al, al
mov al, byte [0x51c354]
je 0x408484
neg ebx
sbb bl, bl
and bl, 0xc2
add bl, 0x60
test al, al
jne 0x408437
mov ecx, esi
call fcn.0040511c
test al, al
je 0x40846a
mov byte [esp + 0x2c], bl
mov cl, byte [esi]
test cl, cl
lea eax, [esp + 0x2d]
je 0x408460
lea esp, [esp]
cmp cl, bl
jne 0x408453
mov byte [eax], bl
inc eax
mov cl, byte [esi]
mov byte [eax], cl
mov cl, byte [esi + 1]
inc eax
inc esi
test cl, cl
jne 0x40844c
mov byte [eax], bl
mov byte [eax + 1], 0
lea esi, [esp + 0x2c]
mov edx, dword [ebp + 4]
push edx
push esi
lea eax, [esp + 0x78]
push eax
push 0x437034
push edi
call fcn.004291d4
add esp, 0x14
jmp 0x4084dd
neg ebx
sbb bl, bl
and bl, 0xc2
add bl, 0x60
test al, al
jne 0x40849d
mov ecx, esi
call fcn.0040511c
test al, al
je 0x4084ca
mov byte [esp + 0x2c], bl
mov cl, byte [esi]
test cl, cl
lea eax, [esp + 0x2d]
je 0x4084c0
nop
cmp cl, bl
jne 0x4084b3
mov byte [eax], bl
inc eax
mov cl, byte [esi]
mov byte [eax], cl
mov cl, byte [esi + 1]
inc eax
inc esi
test cl, cl
jne 0x4084ac
mov byte [eax], bl
mov byte [eax + 1], 0
lea esi, [esp + 0x2c]
mov edx, dword [ebp + 4]
push edx
push esi
push 0x43702c
push edi
call fcn.004291d4
add esp, 0x10
mov eax, dword [ebp + 0x10]
test eax, eax
je 0x408502
push edi
push 0x437020
call fcn.004294cd
mov eax, dword [ebp + 0x10]
mov ecx, dword [esp + 0x28]
mov ebx, dword [ecx + 0x10]
push eax
call fcn.0040641c
add esp, 0xc
mov edx, dword [ebp + 8]
cmp byte [edx], 0
jne 0x408518
push edi
push 0x437014
call fcn.004294cd
add esp, 8
mov eax, dword [ebp + 0x14]
cmp byte [eax], 0
je 0x40852f
push eax
push 0x437010
push edi
call fcn.004291d4
add esp, 0xc
push edi
call fcn.004058ac
mov ebx, dword [esp + 0x20]
add esp, 4
push ebx
call fcn.00412b7c
mov ebp, eax
test ebp, ebp
mov dword [esp + 0x18], ebp
jne 0x408304
mov esi, dword [esp + 0x1c]
push esi
call fcn.004115bc
push esi
mov dword [esp + 0x24], eax
call fcn.0041042c
mov al, byte [0x51c34d]
test al, al
jne 0x4080eb
lea eax, [esp + 0x70]
push eax
push 0x436ffc
lea ecx, [esp + 0x380]
push 0x214
push ecx
call fcn.004145fc
mov esi, dword [case.0x6502ec.0]
add esp, 0x10
lea ebx, [esp + 0x378]
lea edi, [esp + 0x1c]
call fcn.0040509c
test eax, eax
je 0x4085d9
mov eax, dword [0x51c37c]
test eax, eax
je 0x4085c2
mov edx, dword [esp + 0x14]
push 0x10
push edx
call fcn.0040ca3c
add esp, 8
mov esi, 2
call fcn.004050ec
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xb7c
ret
mov ebp, dword [esp + 0x1c]
push ebp
xor ebx, ebx
mov dword [esp + 0x28], 0x7fffffff
call fcn.00412b7c
mov esi, eax
test esi, esi
je 0x40862a
mov eax, dword [esi + 0xc]
push eax
call fcn.00429443
add esp, 4
cmp eax, 1
jne 0x408618
mov esi, dword [esi + 8]
inc ebx
mov edi, 0x436ff4
mov ecx, 8
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
je 0x408626
push ebp
call fcn.00412b7c
mov esi, eax
test esi, esi
jne 0x4085f3
jmp 0x40862a
mov dword [esp + 0x24], ebx
push 0
push 0
push ebp
call fcn.0041347c
xor esi, esi
push ebp
mov dword [esp + 0x2c], esi
call fcn.00412b7c
mov ebp, dword [esp + 0x14]
mov edi, eax
test edi, edi
mov dword [esp + 0x18], edi
je 0x40884f
mov ebx, dword [esp + 0x1c]
lea ebx, [ebx]
mov al, byte [0x51c35b]
test al, al
je 0x40867e
lea eax, [esp + 0x18]
push eax
push 0x436ff0
mov eax, ebp
call fcn.0040667c
add esp, 8
jmp 0x40883b
mov ecx, dword [edi + 0xc]
push ecx
call fcn.00429443
add esp, 4
cmp eax, 1
jne 0x4087a3
mov edx, esi
inc esi
test edx, edx
mov dword [esp + 0x28], esi
je 0x4086a9
push ebp
push 0x29
call fcn.0042961a
add esp, 8
mov eax, dword [edi + 4]
push eax
call fcn.00429443
add esp, 4
test eax, eax
je 0x408726
mov ebx, dword [0x51c3a4]
mov al, byte [0x51c354]
mov esi, dword [edi + 8]
and ebx, 0x47c
neg ebx
sbb bl, bl
and bl, 0xc2
add bl, 0x60
test al, al
jne 0x4086e6
mov ecx, esi
call fcn.0040511c
test al, al
je 0x408712
mov byte [esp + 0x2c], bl
mov cl, byte [esi]
test cl, cl
lea eax, [esp + 0x2d]
je 0x408708
cmp cl, bl
jne 0x4086fb
mov byte [eax], bl
inc eax
mov cl, byte [esi]
mov byte [eax], cl
mov cl, byte [esi + 1]
inc eax
inc esi
test cl, cl
jne 0x4086f4
mov byte [eax], bl
mov byte [eax + 1], 0
lea esi, [esp + 0x2c]
push esi
push 0x436fe0
push ebp
call fcn.004291d4
add esp, 0xc
jmp 0x4087ae
cmp esi, dword [esp + 0x24]
jne 0x408739
push ebp
push 0x436fcc
call fcn.004294cd
jmp 0x4087ab
mov ebx, dword [0x51c3a4]
mov al, byte [0x51c354]
mov esi, dword [edi + 8]
and ebx, 0x47c
neg ebx
sbb bl, bl
and bl, 0xc2
add bl, 0x60
test al, al
jne 0x408766
mov ecx, esi
call fcn.0040511c
test al, al
je 0x408792
mov byte [esp + 0x2c], bl
mov cl, byte [esi]
test cl, cl
lea eax, [esp + 0x2d]
je 0x408788
cmp cl, bl
jne 0x40877b
mov byte [eax], bl
inc eax
mov dl, byte [esi]
mov byte [eax], dl
mov cl, byte [esi + 1]
inc eax
inc esi
test cl, cl
jne 0x408774
mov byte [eax], bl
mov byte [eax + 1], 0
lea esi, [esp + 0x2c]
push esi
push 0x436fbc
push ebp
call fcn.004291d4
add esp, 0xc
jmp 0x4087ae
push ebp
push 0x2c
call fcn.0042961a
add esp, 8
mov ebx, dword [0x51c3a4]
mov al, byte [0x51c354]
mov esi, dword [edi + 0x10]
and ebx, 0x47c
neg ebx
sbb bl, bl
and bl, 0xc2
add bl, 0x60
test al, al
jne 0x4087db
mov ecx, esi
call fcn.0040511c
test al, al
je 0x40880a
mov byte [esp + 0x2c], bl
mov cl, byte [esi]
test cl, cl
lea eax, [esp + 0x2d]
je 0x408800
lea ecx, [ecx]
cmp cl, bl
jne 0x4087f3
mov byte [eax], bl
inc eax
mov cl, byte [esi]
mov byte [eax], cl
mov cl, byte [esi + 1]
inc eax
inc esi
test cl, cl
jne 0x4087ec
mov byte [eax], bl
mov byte [eax + 1], 0
lea esi, [esp + 0x2c]
push ebp
push esi
call fcn.004294cd
mov eax, dword [edi + 0x1c]
add esp, 8
test eax, eax
je 0x40882a
push eax
push 0x436fb4
push ebp
call fcn.004291d4
add esp, 0xc
push ebp
call fcn.004058ac
mov esi, dword [esp + 0x2c]
mov ebx, dword [esp + 0x20]
add esp, 4
push ebx
call fcn.00412b7c
mov edi, eax
test edi, edi
mov dword [esp + 0x18], edi
jne 0x40865c
mov al, byte [0x51c35b]
test al, al
jne 0x40887b
test esi, esi
je 0x408867
push ebp
push 0x29
call fcn.0042961a
add esp, 8
push ebp
push 0x436fb0
call fcn.004294cd
push ebp
call fcn.004058ac
add esp, 0xc
mov al, byte [fcn.00442055]
test al, al
je 0x4089de
mov ecx, dword [esp + 0xb90]
lea eax, [esp + 0x98c]
call fcn.004051bc
push eax
push 0x4361a0
lea edx, [esp + 0x380]
push 0x214
push edx
call fcn.004145fc
mov esi, dword [case.0x6502ec.0]
add esp, 0x10
lea ebx, [esp + 0x378]
lea edi, [esp + 0x1c]
call fcn.0040509c
test eax, eax
mov ebx, dword [esp + 0x1c]
je 0x408920
mov eax, dword [case.0x6502ec.0]
push eax
call fcn.004115dc
cmp eax, 0x428
je 0x4089d8
mov al, byte [0x51c34c]
test al, al
je 0x4089d8
mov ecx, dword [case.0x6502ec.0]
push ecx
call fcn.004115ec
push eax
lea edx, [esp + 0x74]
push edx
push 0x436124
push 0x51ae68
call fcn.004291d4
add esp, 0x10
jmp 0x4089d8
push ebx
call fcn.00412b7c
mov esi, eax
test esi, esi
mov dword [esp + 0x18], esi
jne 0x408958
mov eax, dword [case.0x6502ec.0]
push eax
call fcn.004115ec
push eax
lea ecx, [esp + 0x74]
push ecx
push 0x436164
push 0x51ae68
call fcn.004291d4
add esp, 0x10
jmp 0x4089d8
mov al, byte [0x51c35b]
test al, al
je 0x408977
lea edx, [esp + 0x18]
push edx
push 0x436fa8
mov eax, ebp
call fcn.0040667c
add esp, 8
jmp 0x4089d8
push ebp
push 0x436fa4
call fcn.004294cd
push 0
push 0x436f9c
push 0x436f94
push ebx
push ebp
mov eax, esi
call fcn.004079fc
push 0
push 0x436f84
push 0x435d58
push ebx
push ebp
mov eax, esi
call fcn.004079fc
push 1
push 0x436f7c
push 0x436f70
push ebx
push ebp
mov eax, esi
call fcn.004079fc
add esp, 0x44
push ebp
push 0x436f6c
call fcn.004294cd
push ebp
call fcn.004058ac
add esp, 0xc
push ebx
call fcn.0041042c
mov al, byte [0x51c35b]
test al, al
push ebp
jne 0x4089ef
push 0x436a38
jmp 0x4089f4
push 0x436f54
call fcn.004294cd
add esp, 8
push ebp
call fcn.004058ac
add esp, 4
jmp 0x4080ef