Function at 0x4233f0
Capabilities:
Write file on windows

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x74
mov edx, dword [esp + 0x88]
mov eax, dword [0x5c0b00]
xor eax, esp
mov dword [esp + 0x70], eax
mov dword [esp + 4], ecx
mov dword [esp + 0x30], 0xffffffff
mov dword [esp + 0x14], edx
movsx eax, dl
mov dword [esp + 0x18], eax
mov edi, 0xe50fc918
jmp 0x423470
and bl, 1
mov byte [esp + 8], bl
movzx eax, byte [esp + 8]
mov byte [esp + 0x11], al
mov eax, dword [0x5c228c]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
mov edi, 0xdde33a16
mov edx, 0xf7c3ea76
cmove edi, edx
cmp dword [0x5c2290], 0xa
mov ecx, 0xdde33a16
cmovge edi, ecx
setl cl
xor cl, al
cmovne edi, edx
cmp edi, 0xfaf22ede
jg 0x4234e0
cmp edi, 0xc0fa4e72
jg 0x423540
cmp edi, 0x9d42d3b3
jle 0x4236ce
cmp edi, 0xa728097d
jg 0x4238f5
cmp edi, 0xa5cfbd1b
jg 0x423be6
cmp edi, 0x9d42d3b4
je 0x423f15
cmp edi, 0xa5562183
jne 0x423470
mov ecx, dword [esp + 0x44]
lea eax, [esp + 0x50]
sub ecx, eax
mov dword [esp + 0x28], ecx
mov edi, 0xabd302b7
mov eax, 0x5596b85d
cmove edi, eax
jmp 0x423470
cmp edi, 0x3c81b3c2
jle 0x423680
cmp edi, 0x65754077
jle 0x423723
cmp edi, 0x76e46fca
jg 0x42394d
cmp edi, 0x71b56427
jg 0x423c10
cmp edi, 0x65754078
je 0x423f5f
cmp edi, 0x6c163ddb
jne 0x423470
cmp byte [esp + 0x12], 0
mov edi, 0x5596b85d
mov eax, 0xc14f892b
cmovne edi, eax
jmp 0x423470
cmp edi, 0xdc583d94
jle 0x42376d
cmp edi, 0xe50fc917
jg 0x42397b
cmp edi, 0xdfb40845
jg 0x423c4c
cmp edi, 0xdc583d95
je 0x423f71
cmp edi, 0xdde33a16
jne 0x423470
mov eax, dword [esp + 4]
mov edi, dword [eax + 0x4c]
mov eax, dword [0x5c1e64]
mov ecx, dword [0x5c1e68]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esp + 2]
cmp ecx, 0xa
setl byte [esp + 3]
mov ecx, 0x9fd637e3
nop dword [eax]
cmp ecx, 0x3ed42081
jg 0x4235e0
cmp ecx, 0x9fd637e3
je 0x42364c
cmp ecx, 0x331a82cc
jne 0x4235b0
push edi
push dword [esp + 0x1c]
call fcn.005947cd
add esp, 8
mov ecx, 0x428150b2
jmp 0x4235b0
cmp ecx, 0x3ed42082
je 0x423f7b
cmp ecx, 0x428150b2
jne 0x4235b0
push edi
push dword [esp + 0x1c]
call fcn.005947cd
add esp, 8
mov ebp, eax
mov ecx, dword [0x5c1e64]
mov edx, dword [0x5c1e68]
lea ebx, [ecx + 1]
imul ebx, ecx
mov ecx, ebx
xor ecx, 0xfffffffe
test ecx, ebx
sete al
cmp edx, 0xa
setl ah
xor ah, al
mov eax, 0x331a82cc
mov esi, 0x3ed42082
cmovne eax, esi
test ecx, ebx
mov ecx, eax
cmove ecx, esi
cmp edx, 0xa
cmovge ecx, eax
cmp ebp, 0xffffffff
setne bl
jmp 0x4235b0
movzx eax, byte [esp + 2]
movzx ecx, byte [esp + 3]
mov edx, eax
xor dl, cl
test cl, cl
mov ecx, 0x331a82cc
mov esi, 0x428150b2
cmovne ecx, esi
test al, al
mov eax, 0x331a82cc
cmove ecx, eax
test dl, dl
cmovne ecx, esi
jmp 0x4235b0
cmp edi, 0x134f7967
jle 0x4237c1
cmp edi, 0x280a4195
jle 0x423a75
cmp edi, 0x2cf3dc14
jg 0x423ca6
cmp edi, 0x280a4196
je 0x423f91
cmp edi, 0x2cc343bf
jne 0x423470
mov edi, 0x4a024c1
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x20], eax
jmp 0x423470
cmp edi, 0x8ddbb65b
jle 0x423aa3
cmp edi, 0x95ece714
jg 0x423cd8
cmp edi, 0x8ddbb65c
je 0x423ff8
cmp edi, 0x92b2923c
jne 0x423470
mov eax, dword [0x5c228c]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
mov edi, 0xdde33a16
mov edx, 0xc6daf723
jmp 0x423456
cmp edi, 0x4a4d1cb7
jle 0x423ae1
cmp edi, 0x4fd2c181
jg 0x423d13
cmp edi, 0x4a4d1cb8
je 0x42402b
cmp edi, 0x4c5364af
jne 0x423470
mov dword [esp + 0x38], 0xffffffff
mov edi, 0x134f7968
mov eax, dword [esp + 0x38]
mov dword [esp + 0x24], eax
jmp 0x423470
cmp edi, 0xc6daf722
jle 0x423b4b
cmp edi, 0xd2dfa425
jg 0x423d4d
cmp edi, 0xc6daf723
je 0x42406f
cmp edi, 0xcd510935
jne 0x423470
mov eax, dword [0x5c228c]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
mov edi, 0x80c6133
mov edx, 0x9d0887f
jmp 0x4246fd
cmp edi, 0x4a024c0
jle 0x423bab
cmp edi, 0x9d0887e
jg 0x423d7e
cmp edi, 0x4a024c1
je 0x424168
cmp edi, 0x80c6133
jne 0x423470
mov eax, dword [esp + 4]
mov edi, dword [eax + 0x4c]
movsx ebp, byte [esp + 0x4f]
mov eax, dword [0x5c1e64]
mov ecx, dword [0x5c1e68]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esp + 2]
cmp ecx, 0xa
setl byte [esp + 3]
mov ecx, 0x9fd637e3
nop dword [eax + eax]
cmp ecx, 0x3ed42081
jg 0x423860
cmp ecx, 0x9fd637e3
je 0x4238c9
cmp ecx, 0x331a82cc
jne 0x423830
push edi
push ebp
call fcn.005947cd
add esp, 8
mov ecx, 0x428150b2
jmp 0x423830
cmp ecx, 0x3ed42082
je 0x42417a
cmp ecx, 0x428150b2
jne 0x423830
push edi
push ebp
call fcn.005947cd
add esp, 8
mov ebx, dword [0x5c1e64]
mov edx, dword [0x5c1e68]
lea ecx, [ebx + 1]
imul ecx, ebx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete bl
cmp edx, 0xa
setl bh
xor bh, bl
mov ebx, 0x331a82cc
mov esi, 0x3ed42082
cmovne ebx, esi
cmp ecx, 0xffffffff
mov ecx, ebx
cmove ecx, esi
cmp edx, 0xa
cmovge ecx, ebx
cmp eax, 0xffffffff
setne bl
jmp 0x423830
movzx eax, byte [esp + 2]
movzx ecx, byte [esp + 3]
mov edx, eax
xor dl, cl
mov edx, 0x331a82cc
mov esi, 0x428150b2
cmovne edx, esi
test cl, cl
mov ecx, edx
cmovne ecx, esi
test al, al
cmove ecx, edx
jmp 0x423830
cmp edi, 0xb1577e54
jg 0x423da0
cmp edi, 0xa728097e
je 0x424190
cmp edi, 0xabd302b7
jne 0x423470
mov eax, dword [0x5c228c]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
mov edi, 0x720bbd34
mov edx, 0x280a4196
cmove edi, edx
cmp dword [0x5c2290], 0xa
mov ecx, 0x720bbd34
jmp 0x423465
cmp edi, 0x7c5ba402
jg 0x423dc2
cmp edi, 0x76e46fcb
je 0x4241a2
cmp edi, 0x778fdb1d
jne 0x423470
mov edi, 0x4a4d1cb8
jmp 0x423470
cmp edi, 0xeab8693b
jg 0x423e0d
cmp edi, 0xe50fc918
je 0x4241bc
cmp edi, 0xe8169ff8
jne 0x423470
mov eax, dword [0x5c232c]
mov ecx, dword [0x5c2330]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0x7f0b5abd
mov ebx, 0x79483225
cmovne edi, ebx
test eax, edx
mov edx, dword [esp + 4]
sete byte [esp + 2]
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
setl byte [esp + 3]
mov ecx, dword [edx + 0x20]
cmovge eax, edi
mov edx, 0xf91fe898
nop word cs:[eax + eax]
cmp edx, 0x79483224
jg 0x423a50
cmp edx, 0xc0b22442
je 0x423a6b
cmp edx, 0xf91fe898
jne 0x423a00
movzx ebx, byte [esp + 2]
movzx edx, byte [esp + 3]
mov dh, bl
xor dh, dl
mov edi, 0x7f0b5abd
mov ebp, 0xc0b22442
cmovne edi, ebp
test dl, dl
mov edx, edi
cmovne edx, ebp
test bl, bl
cmove edx, edi
jmp 0x423a00
cmp edx, 0x79483225
je 0x4241db
cmp edx, 0x7f0b5abd
jne 0x423a00
mov edx, 0xc0b22442
jmp 0x423a00
mov edx, dword [ecx]
mov dword [esp + 8], edx
mov edx, eax
jmp 0x423a00
cmp edi, 0x1aae6233
jg 0x423e3c
cmp edi, 0x134f7968
je 0x424219
cmp edi, 0x19922bae
jne 0x423470
mov edi, 0x1aae6234
jmp 0x423470
cmp edi, 0x820b3f3b
je 0x424263
cmp edi, 0x84226930
je 0x4242ad
cmp edi, 0x8dc95f4b
jne 0x423470
mov eax, dword [esp + 0x14]
mov dword [esp + 0x34], eax
mov edi, 0x134f7968
mov eax, dword [esp + 0x34]
mov dword [esp + 0x24], eax
jmp 0x423470
cmp edi, 0x3c81b3c3
je 0x424385
cmp edi, 0x4637841c
je 0x424397
cmp edi, 0x48798ff3
jne 0x423470
mov eax, dword [0x5c228c]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
mov edi, 0x65754078
mov esi, 0x778fdb1d
cmove edi, esi
cmp dword [0x5c2290], 0xa
setl cl
mov edx, 0x65754078
cmovge edi, edx
xor cl, al
cmovne edi, esi
mov dword [esp + 0xc], 0xffffffff
jmp 0x423470
cmp edi, 0xc0fa4e73
je 0x4243e3
cmp edi, 0xc1382c0d
je 0x4243ed
cmp edi, 0xc14f892b
jne 0x423470
mov ecx, dword [0x5c228c]
mov eax, dword [0x5c2290]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov ebx, 0x65754078
mov ebp, 0x48798ff3
cmovne ebx, ebp
test ecx, edx
mov edi, ebx
cmove edi, ebp
jmp 0x423c9b
cmp edi, 0xfaf22edf
je 0x424406
cmp edi, 0xfcb21ee1
je 0x424418
cmp edi, 0x3660ecb
jne 0x423470
cmp byte [esp + 0x13], 0
mov edi, 0x76e46fcb
mov eax, 0xa5cfbd1c
cmovne edi, eax
jmp 0x423470
cmp edi, 0xa5cfbd1c
je 0x424431
cmp edi, 0xa5e199b7
jne 0x423470
mov edi, 0x4a4d1cb8
mov eax, dword [esp + 0x14]
mov dword [esp + 0xc], eax
jmp 0x423470
cmp edi, 0x71b56428
je 0x424465
cmp edi, 0x720bbd34
jne 0x423470
mov eax, dword [esp + 4]
push dword [eax + 0x4c]
push dword [esp + 0x2c]
push 1
lea eax, [esp + 0x5c]
push eax
call fcn.00594c77
add esp, 0x10
mov edi, 0x280a4196
jmp 0x423470
cmp edi, 0xdfb40846
je 0x424498
cmp edi, 0xe3f57be5
jne 0x423470
mov ecx, dword [0x5c228c]
mov eax, dword [0x5c2290]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov ebx, 0xc0fa4e73
mov esi, 0x71b56428
cmovne ebx, esi
test ecx, edx
mov edi, ebx
cmove edi, esi
cmp eax, 0xa
cmovge edi, ebx
jmp 0x423470
cmp edi, 0x2cf3dc15
je 0x4244aa
cmp edi, 0x36bf4694
jne 0x423470
mov eax, dword [esp + 4]
cmp dword [eax + 0x4c], 0
mov edi, 0x96202bff
mov eax, 0xdfb40846
cmove edi, eax
jmp 0x423470
cmp edi, 0x95ece715
je 0x4244c4
cmp edi, 0x96202bff
jne 0x423470
mov ecx, dword [esp + 4]
call fcn.004228c0
mov eax, dword [esp + 4]
cmp dword [eax + 0x38], 0
mov edi, 0xd2dfa426
mov eax, 0x92b2923c
cmove edi, eax
jmp 0x423470
cmp edi, 0x4fd2c182
je 0x4244db
cmp edi, 0x5596b85d
jne 0x423470
mov eax, dword [esp + 4]
mov byte [eax + 0x3d], 1
lea eax, [esp + 0x4f]
cmp dword [esp + 0x48], eax
mov edi, 0xa5e199b7
mov eax, 0x7c5ba403
cmove edi, eax
jmp 0x423470
cmp edi, 0xd2dfa426
je 0x4244e5
cmp edi, 0xd3be2836
jne 0x423470
mov eax, dword [esp + 0x1c]
cmp eax, 3
mov edi, 0x3c81b3c3
mov eax, 0xcd510935
cmove edi, eax
jmp 0x423470
cmp edi, 0x9d0887f
je 0x42452d
cmp edi, 0xdb1eda7
jne 0x423470
mov edi, 0x1aae6234
jmp 0x423470
cmp edi, 0xb1577e55
je 0x424635
cmp edi, 0xb5956deb
jne 0x423470
mov edi, 0xe3f57be5
jmp 0x423470
cmp edi, 0x7c5ba403
je 0x42463f
cmp edi, 0x7df90299
jne 0x423470
mov edx, dword [0x5c228c]
mov eax, dword [0x5c2290]
lea ecx, [edx + 1]
imul ecx, edx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete dl
cmp eax, 0xa
setl dh
xor dh, dl
mov edx, 0x258133b6
mov esi, 0xe8169ff8
jmp 0x424059
cmp edi, 0xeab8693c
je 0x424673
cmp edi, 0xf7c3ea76
jne 0x423470
cmp byte [esp + 0x11], 0
mov edi, 0x4c5364af
mov eax, 0x8dc95f4b
cmovne edi, eax
jmp 0x423470
cmp edi, 0x258133b6
jne 0x424711
mov eax, dword [0x5c232c]
mov ecx, dword [0x5c2330]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0x7f0b5abd
mov ebx, 0x79483225
cmovne edi, ebx
test eax, edx
mov edx, dword [esp + 4]
sete byte [esp + 2]
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
setl byte [esp + 3]
mov ecx, dword [edx + 0x20]
cmovge eax, edi
mov edx, 0xf91fe898
nop dword [eax + eax]
cmp edx, 0x79483224
jg 0x423ef0
cmp edx, 0xc0b22442
je 0x423f0b
cmp edx, 0xf91fe898
jne 0x423ea0
movzx ebx, byte [esp + 2]
movzx edx, byte [esp + 3]
mov bh, bl
xor bh, dl
test dl, dl
mov edx, 0x7f0b5abd
mov ebp, 0xc0b22442
cmovne edx, ebp
test bl, bl
mov edi, 0x7f0b5abd
cmove edx, edi
test bh, bh
cmovne edx, ebp
jmp 0x423ea0
cmp edx, 0x79483225
je 0x42469a
cmp edx, 0x7f0b5abd
jne 0x423ea0
mov edx, 0xc0b22442
jmp 0x423ea0
mov edx, dword [ecx]
mov dword [esp + 8], edx
mov edx, eax
jmp 0x423ea0
mov ecx, dword [0x5c228c]
mov eax, dword [0x5c2290]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov ebx, 0x4fd2c182
mov ebp, 0x2cc343bf
cmovne ebx, ebp
test ecx, edx
mov edi, ebx
cmove edi, ebp
cmp eax, 0xa
mov eax, dword [esp + 0x14]
mov dword [esp + 0x3c], eax
cmovge edi, ebx
jmp 0x423470
mov edi, 0x48798ff3
mov dword [esp + 0xc], 0xffffffff
jmp 0x423470
mov edi, 0x8ddbb65c
jmp 0x423470
and bl, 1
mov byte [esp + 8], bl
movzx eax, byte [esp + 8]
mov edi, 0xc6daf723
jmp 0x423470
mov eax, dword [esp + 4]
push dword [eax + 0x4c]
mov ebp, dword [esp + 0x2c]
push ebp
push 1
lea eax, [esp + 0x5c]
push eax
call fcn.00594c77
add esp, 0x10
mov edi, dword [0x5c228c]
mov ecx, dword [0x5c2290]
lea edx, [edi + 1]
imul edx, edi
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0x720bbd34
mov esi, 0x6c163ddb
cmovne ebx, esi
cmp edx, 0xffffffff
mov edi, ebx
cmove edi, esi
cmp ecx, 0xa
cmovge edi, ebx
cmp ebp, eax
setne byte [esp + 0x12]
jmp 0x423470
mov eax, dword [0x5c228c]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
mov edi, 0xdc583d95
mov edx, 0xb5956deb
cmove edi, edx
cmp dword [0x5c2290], 0xa
mov ecx, 0xdc583d95
jmp 0x423465
mov edx, dword [0x5c228c]
mov eax, dword [0x5c2290]
lea ecx, [edx - 1]
imul ecx, edx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete dl
cmp eax, 0xa
setl dh
xor dh, dl
mov edx, 0xdc583d95
mov esi, 0x8ddbb65c
cmovne edx, esi
cmp ecx, 0xffffffff
mov edi, edx
cmove edi, esi
cmp eax, 0xa
cmovge edi, edx
jmp 0x423470
mov eax, dword [esp + 4]
mov edi, dword [eax + 0x4c]
mov eax, dword [0x5c1e64]
mov ecx, dword [0x5c1e68]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esp + 2]
cmp ecx, 0xa
setl byte [esp + 3]
mov ecx, 0x9fd637e3
cmp ecx, 0x3ed42081
jg 0x4240d0
cmp ecx, 0x9fd637e3
je 0x42413c
cmp ecx, 0x331a82cc
jne 0x4240a0
push edi
push dword [esp + 0x1c]
call fcn.005947cd
add esp, 8
mov ecx, 0x428150b2
jmp 0x4240a0
cmp ecx, 0x3ed42082
je 0x423427
cmp ecx, 0x428150b2
jne 0x4240a0
push edi
push dword [esp + 0x1c]
call fcn.005947cd
add esp, 8
mov ebp, eax
mov ecx, dword [0x5c1e64]
mov edx, dword [0x5c1e68]
lea ebx, [ecx + 1]
imul ebx, ecx
mov ecx, ebx
xor ecx, 0xfffffffe
test ecx, ebx
sete al
cmp edx, 0xa
setl ah
xor ah, al
mov eax, 0x331a82cc
mov esi, 0x3ed42082
cmovne eax, esi
test ecx, ebx
mov ecx, eax
cmove ecx, esi
cmp edx, 0xa
cmovge ecx, eax
cmp ebp, 0xffffffff
setne bl
jmp 0x4240a0
movzx eax, byte [esp + 2]
movzx ecx, byte [esp + 3]
mov edx, eax
xor dl, cl
mov edx, 0x331a82cc
mov ebp, 0x428150b2
cmovne edx, ebp
test cl, cl
mov ecx, edx
cmovne ecx, ebp
test al, al
cmove ecx, edx
jmp 0x4240a0
mov edi, 0xe3f57be5
mov eax, dword [esp + 0x20]
mov dword [esp + 0xc], eax
jmp 0x423470
and bl, 1
mov byte [esp + 8], bl
movzx eax, byte [esp + 8]
mov edi, 0x9d0887f
jmp 0x423470
mov edi, 0x4637841c
mov eax, dword [esp + 0x2c]
mov dword [esp + 0xc], eax
jmp 0x423470
mov dword [esp + 0x40], 0xffffffff
mov edi, 0x4a024c1
mov eax, dword [esp + 0x40]
mov dword [esp + 0x20], eax
jmp 0x423470
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x30]
cmp ecx, eax
mov edi, 0x7df90299
mov eax, 0x2cf3dc15
cmove edi, eax
jmp 0x423470
cmp dword [esp + 8], 0
setne byte [esp + 0x10]
mov eax, dword [0x5c228c]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
mov edi, 0x258133b6
mov edx, 0x95ece715
cmove edi, edx
cmp dword [0x5c2290], 0xa
mov ecx, 0x258133b6
jmp 0x423465
mov ecx, dword [0x5c228c]
mov eax, dword [0x5c2290]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov ebx, 0xa728097e
mov esi, 0x4637841c
cmovne ebx, esi
test ecx, edx
mov edi, ebx
cmove edi, esi
cmp eax, 0xa
mov eax, dword [esp + 0x24]
mov dword [esp + 0x2c], eax
cmovge edi, ebx
jmp 0x423470
mov ecx, dword [0x5c228c]
mov eax, dword [0x5c2290]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov esi, 0xfaf22edf
mov ebx, 0xb1577e55
cmovne esi, ebx
test ecx, edx
mov edi, esi
cmove edi, ebx
cmp eax, 0xa
cmovge edi, esi
mov dword [esp + 0xc], 0xffffffff
jmp 0x423470
mov edx, dword [0x5c232c]
mov ecx, dword [0x5c2330]
lea eax, [edx - 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x7f0b5abd
mov ebx, 0x79483225
cmovne edx, ebx
cmp eax, 0xffffffff
mov edi, dword [esp + 4]
sete byte [esp + 2]
mov eax, edx
cmove eax, ebx
cmp ecx, 0xa
setl byte [esp + 3]
mov ecx, dword [edi + 0x20]
cmovge eax, edx
mov edx, 0xf91fe898
nop word cs:[eax + eax]
cmp edx, 0x79483224
jg 0x424360
cmp edx, 0xc0b22442
je 0x42437b
cmp edx, 0xf91fe898
jne 0x424310
movzx ebx, byte [esp + 2]
movzx edx, byte [esp + 3]
mov bh, bl
xor bh, dl
test dl, dl
mov edx, 0x7f0b5abd
mov ebp, 0xc0b22442
cmovne edx, ebp
test bl, bl
mov edi, 0x7f0b5abd
cmove edx, edi
test bh, bh
cmovne edx, ebp
jmp 0x424310
cmp edx, 0x79483225
je 0x4246a8
cmp edx, 0x7f0b5abd
jne 0x424310
mov edx, 0xc0b22442
jmp 0x424310
mov edx, dword [ecx]
mov dword [esp + 8], edx
mov edx, eax
jmp 0x424310
mov edi, 0xe3f57be5
mov dword [esp + 0xc], 0xffffffff
jmp 0x423470
mov edx, dword [0x5c228c]
mov eax, dword [0x5c2290]
lea ecx, [edx + 1]
imul ecx, edx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete dl
cmp eax, 0xa
setl dh
xor dh, dl
mov edx, 0xa728097e
mov esi, 0xdb1eda7
cmovne edx, esi
cmp ecx, 0xffffffff
mov edi, edx
cmove edi, esi
cmp eax, 0xa
mov eax, dword [esp + 0x2c]
mov dword [esp + 0xc], eax
cmovge edi, edx
jmp 0x423470
mov edi, 0x71b56428
jmp 0x423470
mov eax, dword [esp + 0x1c]
cmp eax, 2
mov edi, 0x3c81b3c3
mov eax, 0xa5562183
cmovb edi, eax
jmp 0x423470
mov edi, 0x820b3f3b
mov dword [esp + 0xc], 0xffffffff
jmp 0x423470
mov eax, dword [esp + 0x1c]
cmp eax, 3
mov edi, 0xd3be2836
mov eax, 0xc1382c0d
cmovl edi, eax
jmp 0x423470
mov eax, dword [0x5c228c]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
mov edi, 0x4fd2c182
mov edx, 0x9d42d3b4
cmove edi, edx
cmp dword [0x5c2290], 0xa
mov ecx, 0x4fd2c182
jmp 0x423465
mov eax, dword [0x5c228c]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
mov edi, 0xc0fa4e73
mov edx, 0x19922bae
cmove edi, edx
cmp dword [0x5c2290], 0xa
mov ecx, 0xc0fa4e73
jmp 0x423465
mov edi, 0x1aae6234
mov dword [esp + 0xc], 0xffffffff
jmp 0x423470
mov edi, 0x1aae6234
push dword [esp + 0x14]
call fcn.0042ab30
add esp, 4
mov dword [esp + 0xc], eax
jmp 0x423470
cmp byte [esp + 0x10], 0
mov edi, 0x36bf4694
mov eax, 0x84226930
cmovne edi, eax
jmp 0x423470
mov edi, 0x9d42d3b4
jmp 0x423470
mov eax, dword [esp + 0x14]
mov byte [esp + 0x4f], al
mov eax, dword [esp + 4]
mov ecx, dword [eax + 0x38]
mov eax, dword [esp + 4]
add eax, 0x40
lea edx, [esp + 0x44]
push edx
lea edx, [esp + 0x74]
push edx
lea edx, [esp + 0x58]
push edx
lea edx, [esp + 0x54]
push edx
lea edx, [esp + 0x60]
push edx
lea edx, [esp + 0x63]
push edx
push eax
call fcn.0042acd0
mov dword [esp + 0x1c], eax
mov edi, 0xfcb21ee1
jmp 0x423470
mov eax, dword [esp + 4]
mov edi, dword [eax + 0x4c]
movsx ebp, byte [esp + 0x4f]
mov eax, dword [0x5c1e64]
mov ecx, dword [0x5c1e68]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esp + 2]
cmp ecx, 0xa
setl byte [esp + 3]
mov ecx, 0x9fd637e3
nop word cs:[eax + eax]
cmp ecx, 0x3ed42081
jg 0x4245a0
cmp ecx, 0x9fd637e3
je 0x424609
cmp ecx, 0x331a82cc
jne 0x424570
push edi
push ebp
call fcn.005947cd
add esp, 8
mov ecx, 0x428150b2
jmp 0x424570
cmp ecx, 0x3ed42082
je 0x4246ce
cmp ecx, 0x428150b2
jne 0x424570
push edi
push ebp
call fcn.005947cd
add esp, 8
mov ebx, dword [0x5c1e64]
mov edx, dword [0x5c1e68]
lea ecx, [ebx + 1]
imul ecx, ebx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete bl
cmp edx, 0xa
setl bh
xor bh, bl
mov ebx, 0x331a82cc
mov esi, 0x3ed42082
cmovne ebx, esi
cmp ecx, 0xffffffff
mov ecx, ebx
cmove ecx, esi
cmp edx, 0xa
cmovge ecx, ebx
cmp eax, 0xffffffff
setne bl
jmp 0x424570
movzx eax, byte [esp + 2]
movzx ecx, byte [esp + 3]
mov edx, eax
xor dl, cl
mov edx, 0x331a82cc
mov esi, 0x428150b2
cmovne edx, esi
test cl, cl
mov ecx, edx
cmovne ecx, esi
test al, al
cmove ecx, edx
jmp 0x424570
mov edi, 0x4a4d1cb8
jmp 0x423470
mov eax, dword [0x5c228c]
lea ecx, [eax - 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
mov edi, 0xfaf22edf
mov edx, 0x820b3f3b
cmove edi, edx
cmp dword [0x5c2290], 0xa
mov ecx, 0xfaf22edf
jmp 0x423465
mov eax, dword [esp + 4]
mov ecx, dword [eax + 0x30]
dec dword [ecx]
mov eax, dword [eax + 0x20]
mov ecx, dword [eax]
lea edx, [ecx + 1]
mov dword [eax], edx
mov eax, dword [esp + 0x14]
mov byte [ecx], al
mov edi, 0x1aae6234
mov dword [esp + 0xc], eax
jmp 0x423470
mov eax, dword [esp + 8]
mov edi, 0xe8169ff8
jmp 0x423470
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
mov edx, dword [ecx + 0x20]
mov ecx, dword [ecx + 0x30]
mov edx, dword [edx]
add edx, dword [ecx]
cmp eax, edx
mov edi, 0x36bf4694
mov eax, 0xeab8693c
cmovb edi, eax
jmp 0x423470
and bl, 1
mov byte [esp + 8], bl
movzx eax, byte [esp + 8]
mov byte [esp + 0x13], al
mov eax, dword [0x5c228c]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
mov edi, 0x80c6133
mov edx, 0x3660ecb
cmove edi, edx
cmp dword [0x5c2290], 0xa
mov ecx, 0x80c6133
jmp 0x423465
cmp edi, 0x1aae6234
jne 0x423470
mov ecx, dword [esp + 0x70]
xor ecx, esp
call fcn.005892d5
mov eax, dword [esp + 0xc]
add esp, 0x74
pop esi
pop edi
pop ebx
pop ebp
ret 4