Function at 0x434b10
Capabilities:
Check http status code
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x9f8
mov eax, dword [0x44eea4]
xor eax, esp
mov dword [esp + 0x9f4], eax
mov eax, dword [esp + 0x9fc]
mov edx, dword [esp + 0xa04]
push ebx
push ebp
push esi
mov esi, dword [esp + 0xa0c]
push edi
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], eax
mov dword [esp + 0x10], esi
mov dword [esp + 0x2c], edx
call fcn.00431bd0
xor eax, eax
cmp dword [esi], 0x78
mov ecx, 1
mov edx, 2
mov edi, 3
mov ebx, 4
jne 0x434c87
mov dword [esi], 0x79
mov dword [0x44d108], edx
mov dword [0x44d0e8], edx
mov dword [0x44d10c], edx
or edx, 0xffffffff
mov dword [0x451414], eax
mov dword [0x451410], eax
mov dword [0x451344], ecx
mov dword [0x44d0c0], 0xffffffff
mov dword [0x451364], eax
mov dword [0x44d100], ecx
mov dword [0x44d0e0], eax
mov dword [0x451348], ecx
mov dword [0x44d0c4], 0xffffffff
mov dword [0x451368], eax
mov dword [0x44d104], ecx
mov dword [0x44d0e4], ecx
mov dword [0x45134c], ecx
mov dword [0x44d0c8], 0xffffffff
mov dword [0x45136c], eax
mov dword [0x451350], ecx
mov dword [0x44d0cc], 0xffffffff
mov dword [0x451370], eax
mov dword [0x44d0ec], edi
mov dword [0x451354], ecx
mov dword [0x44d0d0], edx
mov dword [0x451374], eax
mov dword [0x44d110], edi
mov dword [0x44d0f0], ebx
mov dword [0x451358], ecx
mov dword [0x44d0d4], edx
mov dword [0x451378], eax
mov dword [0x44d114], edi
mov dword [0x44d0f4], 5
mov dword [0x45135c], ecx
mov dword [0x44d0d8], edx
mov dword [0x45137c], eax
mov dword [0x44d118], ebx
mov dword [0x44d0f8], 6
mov dword [0x451360], ecx
mov dword [0x44d0dc], edx
mov dword [0x451380], eax
mov dword [0x44d11c], ebx
mov dword [0x44d0fc], 7
mov ecx, dword [esi]
cmp ecx, 0x79
jl 0x435490
mov eax, dword [0x45140c]
add eax, 1
cdq
mov esi, 0x1e
idiv esi
cmp ecx, 0x7b
mov dword [0x45140c], edx
jg 0x434cf4
mov eax, dword [esp + 0x18]
mov ecx, dword [0x45116c]
push eax
push 0
push 0
push 0
push 0x6a
push 0x1b
mov dword [esp + 0x40], 0x1b
mov dword [esp + 0x38], 0x6a
call fcn.0043f100
push 0x324d9a
push 0x29
push 0x83
push 0x180
push 0x2f
call fcn.00437040
add esp, 0x14
jmp 0x434d1e
mov ecx, dword [esp + 0x18]
push ecx
mov ecx, dword [0x45116c]
push 0
push 0
push 9
push 0x7e
push 0x77
mov dword [esp + 0x40], 0xffffffcd
mov dword [esp + 0x38], 0x7e
call fcn.0043f100
mov esi, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
mov edi, dword [esp + 0x28]
mov ecx, dword [0x451178]
push esi
push 0
push 0
push 0x15
lea edx, [ebp + 0x17]
push edx
lea eax, [edi + 0x135]
push eax
call fcn.0043f100
push esi
push 0
push 0
push 0x10
lea ecx, [ebp + 0xd7]
push ecx
mov ecx, dword [0x451178]
lea edx, [edi + 0xe8]
push edx
call fcn.0043f100
lea ebx, [ebp + 0xdd]
add ebp, 0xdf
mov esi, 0x44d100
add edi, 0xed
mov edi, edi
push 0x324d9a
push 0x24
push 0x49
lea eax, [edi - 5]
push ebx
push eax
call fcn.00437040
mov ecx, dword [esp + 0x2c]
mov edx, dword [esi]
add esp, 0x14
push ecx
mov ecx, dword [0x451178]
push 0
push 0
add edx, 0x10
push edx
push ebp
push edi
call fcn.0043f100
add esi, 8
add edi, 0x78
cmp esi, 0x44d120
jl 0x434d80
mov ecx, dword [0x451414]
cmp ecx, 8
jge 0x4351fc
xor ebp, ebp
cmp dword [0x451410], ebp
jne 0x434fa9
cmp dword [0x4513a4], ebp
mov ebx, 1
je 0x434dfc
mov dword [ecx*4 + 0x44d0c0], 0xffffffff
mov dword [ecx*4 + 0x451344], ebx
cmp dword [0x4513b0], ebp
mov edi, dword [esp + 0x14]
je 0x434e94
add dword [ecx*4 + 0x44d0c0], ebx
mov esi, dword [ecx*4 + 0x44d0c0]
mov dword [ecx*4 + 0x451344], ebp
mov eax, dword [edi + 0x7d4]
cmp esi, dword [eax + 0x4d82380]
jge 0x434e82
nop
mov eax, dword [eax + esi*4]
cmp dword [eax + 0x6f8], ebp
jne 0x434e64
mov edx, dword [eax + 0x6f4]
mov eax, 0x66666667
imul edx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 5
je 0x434e5c
cmp eax, 3
jne 0x434e94
cmp dword [0x458428], ebx
je 0x434e94
add esi, ebx
mov dword [ecx*4 + 0x44d0c0], esi
mov dword [ecx*4 + 0x451344], ebp
mov eax, dword [edi + 0x7d4]
cmp esi, dword [eax + 0x4d82380]
jl 0x434e30
mov dword [ecx*4 + 0x44d0c0], 0xffffffff
mov dword [ecx*4 + 0x451344], ebx
cmp dword [0x4513ac], ebp
je 0x434f30
add dword [ecx*4 + 0x44d0c0], 0xffffffff
mov eax, dword [ecx*4 + 0x44d0c0]
cmp eax, 0xffffffff
mov dword [ecx*4 + 0x451344], ebp
je 0x434f29
jge 0x434ed2
mov eax, dword [edi + 0x7d4]
mov edx, dword [eax + 0x4d82380]
sub edx, ebx
mov dword [ecx*4 + 0x44d0c0], edx
mov esi, dword [ecx*4 + 0x44d0c0]
mov eax, dword [edi + 0x7d4]
mov eax, dword [eax + esi*4]
cmp dword [eax + 0x6f8], ebp
jne 0x434f13
mov edx, dword [eax + 0x6f4]
mov eax, 0x66666667
imul edx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 5
je 0x434f0b
cmp eax, 3
jne 0x434f30
cmp dword [0x458428], ebx
je 0x434f30
lea eax, [esi - 1]
cmp eax, 0xffffffff
mov dword [ecx*4 + 0x44d0c0], eax
mov dword [ecx*4 + 0x451344], ebp
jne 0x434ebb
mov dword [ecx*4 + 0x451344], ebx
cmp dword [0x4513b4], ebp
je 0x434f57
push ebp
mov ecx, 0x45560c
mov dword [0x4513b4], ebp
call fcn.00401a30
mov ecx, dword [0x451414]
mov dword [0x451410], ebx
jmp 0x434fad
cmp dword [0x4513b8], ebp
je 0x434fad
push ebp
mov ecx, 0x455614
mov dword [0x4513b8], ebp
call fcn.00401a30
mov ecx, dword [0x451414]
cmp ecx, ebp
jle 0x434f8a
sub ecx, ebx
mov dword [0x451414], ecx
mov dword [0x451410], ebx
jmp 0x434fad
mov ecx, dword [esp + 0x10]
mov dword [ecx], 0xa
mov ecx, edi
call fcn.00431cd0
mov ecx, dword [0x451414]
mov dword [0x457580], ebp
jmp 0x434fad
mov edi, dword [esp + 0x14]
cmp dword [0x451410], ebp
mov ebx, 0xff
mov dword [esp + 0x1c], ebx
jne 0x434fec
mov esi, dword [0x45140c]
mov eax, 0x2aaaaaab
imul esi
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax + eax*2]
add edx, edx
sub esi, edx
mov eax, esi
shl eax, 4
sub eax, esi
add eax, eax
lea ebx, [eax + 0x19]
add eax, 0x46
mov dword [esp + 0x1c], eax
mov ecx, dword [ecx*4 + 0x44d0c0]
mov esi, dword [esp + 0x28]
cmp ecx, ebp
mov ebp, dword [esp + 0x20]
jge 0x435052
mov eax, dword [esp + 0x18]
push eax
xor edi, edi
push edi
push edi
push 0xffffffffffffffff
lea ecx, [ebp + 0x35]
push ecx
mov ecx, dword [0x44fd84]
lea edx, [esi + 0x19]
push edx
call fcn.0043f100
movzx ecx, byte [esp + 0x1c]
or ecx, 0xff00
lea eax, [ebp + 0xce]
push eax
mov eax, dword [0x455608]
movzx edx, bl
shl ecx, 8
add esi, 0x3b
push esi
or ecx, edx
push ecx
push edi
push str._Random
push eax
call fcn.00401290
add esp, 0x18
jmp 0x4350c6
mov edx, dword [esp + 0x18]
push edx
push 0
push 0
push 0xffffffffffffffff
lea eax, [ebp + 0x35]
push eax
mov eax, dword [edi + 0x7d4]
mov ecx, dword [eax + ecx*4]
mov ecx, dword [ecx + 0x6fc]
lea edx, [esi + 0x19]
push edx
call fcn.0043f100
movzx eax, byte [esp + 0x1c]
or eax, 0xff00
lea edx, [ebp + 0xce]
push edx
mov edx, dword [0x451414]
shl eax, 8
movzx ecx, bl
or eax, ecx
mov ecx, dword [edi + 0x7d4]
add esi, 0x3b
push esi
push eax
mov eax, dword [edx*4 + 0x44d0c0]
mov edx, dword [ecx + eax*4]
mov eax, dword [0x455608]
push 0
add edx, 0x25324
push edx
push eax
call fcn.00401290
add esp, 0x18
xor edi, edi
mov edx, dword [0x451410]
cmp edx, 1
jne 0x435179
cmp dword [0x4513b0], edi
mov ebx, dword [0x451414]
jne 0x4350eb
cmp dword [0x4513ac], edi
je 0x4350fe
xor ecx, ecx
cmp dword [ebx*4 + 0x451364], edi
setle cl
mov dword [ebx*4 + 0x451364], ecx
cmp dword [0x4513b4], edi
je 0x43514e
push edi
mov ecx, 0x45560c
mov dword [0x4513b4], edi
call fcn.00401a30
mov ecx, dword [0x451414]
add ecx, 1
cmp ecx, 8
mov dword [0x451410], edi
mov dword [0x451414], ecx
jne 0x4351fc
mov edx, dword [esp + 0x10]
mov dword [edx], 0x7a
mov dword [0x451408], 0
jmp 0x4351fc
cmp dword [0x4513b8], edi
je 0x435181
push edi
mov ecx, 0x455614
mov dword [0x4513b8], edi
call fcn.00401a30
mov edx, dword [0x451410]
sub edx, 1
mov dword [0x451410], edx
cmp edx, 1
jl 0x4351f6
mov ebx, dword [0x451414]
cmp edx, 1
mov eax, 0xff
mov ecx, eax
jne 0x4351b7
mov ecx, dword [0x45140c]
mov eax, 0x2aaaaaab
imul ecx
mov eax, edx
shr eax, 0x1f
add eax, edx
lea eax, [eax + eax*2]
add eax, eax
sub ecx, eax
mov eax, ecx
shl eax, 4
sub eax, ecx
add eax, eax
lea ecx, [eax + 0x19]
add eax, 0x46
movzx edx, al
or edx, 0xff00
add ebp, 0xfd
movzx eax, cl
mov ecx, dword [0x455608]
push ebp
shl edx, 8
push esi
or edx, eax
cmp dword [ebx*4 + 0x451364], edi
push edx
push edi
jne 0x4351e8
push str.Computer
jmp 0x4351ed
push str._Human
push ecx
call fcn.00401290
add esp, 0x18
mov ecx, dword [0x451414]
xor edx, edx
xor eax, eax
test ecx, ecx
mov dword [0x451340], edx
jle 0x435231
lea ebx, [ebx]
cmp dword [eax*4 + 0x451364], 0
jle 0x435224
add edx, 1
mov dword [eax*4 + 0x451364], edx
add eax, 1
cmp eax, ecx
jl 0x435210
mov dword [0x451340], edx
xor edi, edi
test ecx, ecx
jle 0x43535c
xor ebp, ebp
lea ecx, [ecx]
mov eax, edi
and eax, reloc.DSOUND.dll_DirectSoundCreate
mov ebx, 0x4d
mov dword [esp + 0x24], 0xe6
jns 0x43525b
dec eax
or eax, 0xfffffffe
inc eax
mov ecx, dword [edi*4 + 0x44d0e0]
neg eax
sbb eax, eax
and eax, 0xffffffec
add eax, 0xa
lea edx, [eax + ebp]
mov eax, dword [esp + 0x28]
lea esi, [edx + eax]
mov eax, dword [esp + 0x20]
mov dword [esp + 0x1c], ecx
mov ecx, dword [ecx*4 + 0x44d0c0]
add eax, 0xfc
test ecx, ecx
jl 0x4352b8
mov edx, dword [0x455608]
push edx
mov edx, dword [esp + 0x18]
push 0
push 0
push 0xffffffffffffffff
push eax
lea eax, [esi + 0xd8]
push eax
mov eax, dword [edx + 0x7d4]
mov ecx, dword [eax + ecx*4]
mov ecx, dword [ecx + 0x728]
jmp 0x4352d3
mov ecx, dword [0x455608]
push ecx
mov ecx, dword [0x45116c]
push 0
push 0
push 1
push eax
lea edx, [esi + 0xd8]
push edx
call fcn.0043f100
mov eax, dword [esp + 0x1c]
cmp dword [eax*4 + 0x451364], 0
lea eax, [eax*4 + 0x451364]
jne 0x435300
mov byte [0x44d320], 0x43
mov ebx, 0xc8
mov ecx, 0x96
jmp 0x43530d
mov al, byte [eax]
mov cl, byte [esp + 0x24]
add al, 0x30
mov byte [0x44d320], al
mov eax, dword [esp + 0x20]
movzx ecx, cl
movzx edx, bl
add eax, 0x12b
push eax
mov eax, dword [0x455608]
shl ecx, 0x10
or ecx, edx
add esi, 0xe5
push esi
or ecx, 0x7900
push ecx
push 0x8f472f
push 0x44d320
push eax
call fcn.00401290
mov ecx, dword [0x451414]
add edi, 1
add esp, 0x18
add ebp, 0x3c
cmp edi, ecx
jl 0x435240
cmp ecx, 8
jge 0x435490
mov esi, ecx
and esi, reloc.DSOUND.dll_DirectSoundCreate
mov ebx, 0x4d
mov dword [esp + 0x24], 0xe6
jns 0x435381
dec esi
or esi, 0xfffffffe
inc esi
mov edx, dword [ecx*4 + 0x44d0e0]
mov eax, dword [ecx*4 + 0x44d0c0]
mov ebp, dword [esp + 0x20]
mov edi, dword [esp + 0x28]
neg esi
sbb esi, esi
mov dword [esp + 0x1c], edx
mov edx, dword [0x455608]
and esi, 0xffffffec
push edx
add esi, 0xa
test eax, eax
push 0
push 0
jl 0x4353e4
push 0xffffffffffffffff
lea edx, [ebp + 0xfc]
push edx
mov edx, ecx
shl edx, 4
sub edx, ecx
lea ecx, [esi + edx*4]
lea edx, [ecx + edi + 0xd8]
mov ecx, dword [esp + 0x28]
push edx
mov edx, dword [ecx + 0x7d4]
mov eax, dword [edx + eax*4]
mov ecx, dword [eax + 0x728]
jmp 0x435405
mov edx, ecx
push 1
lea eax, [ebp + 0xfc]
shl edx, 4
sub edx, ecx
push eax
lea eax, [esi + edx*4]
lea ecx, [eax + edi + 0xd8]
push ecx
mov ecx, dword [0x45116c]
call fcn.0043f100
cmp dword [0x451410], 1
jl 0x435490
mov edx, dword [esp + 0x1c]
cmp dword [edx*4 + 0x451364], 0
jne 0x435438
mov byte [0x44d320], 0x43
mov ebx, 0xc8
mov ecx, 0x96
jmp 0x435448
mov al, byte [0x451340]
mov cl, byte [esp + 0x24]
add al, 0x31
mov byte [0x44d320], al
mov eax, dword [0x451414]
mov edx, eax
shl edx, 4
sub edx, eax
lea eax, [esi + edx*4]
lea edx, [eax + edi + 0xe5]
movzx eax, cl
movzx ecx, bl
shl eax, 0x10
add ebp, 0x12b
push ebp
push edx
mov edx, dword [0x455608]
or eax, ecx
or eax, 0x7900
push eax
push 0x8f472f
push 0x44d320
push edx
call fcn.00401290
add esp, 0x18
mov esi, dword [esp + 0x10]
mov ebx, dword [esp + 0x18]
xor ebp, ebp
cmp dword [esi], 0x7a
jne 0x435646
mov ecx, dword [0x45116c]
push ebx
push ebp
push ebp
mov edi, 2
push edi
push 0xa2
push 0x116
call fcn.0043f100
mov ecx, dword [0x45116c]
push ebx
push ebp
push ebp
push 3
push 0xb3
push 0x13a
call fcn.0043f100
mov ecx, dword [0x45116c]
push ebx
push ebp
push ebp
push 5
push 0xe8
push 0x142
call fcn.0043f100
mov ecx, dword [0x45116c]
push ebx
push ebp
push ebp
push 6
push 0xe8
push 0x1aa
call fcn.0043f100
cmp dword [0x451408], ebp
mov ecx, dword [0x45116c]
push ebx
push ebp
push ebp
jne 0x43552e
push 7
push 0xe5
push 0x13f
jmp 0x43553a
push 8
push 0xe6
push 0x1a4
call fcn.0043f100
cmp dword [0x4513ac], ebp
jne 0x43554f
cmp dword [0x4513b0], ebp
je 0x43555f
mov eax, 1
sub eax, dword [0x451408]
mov dword [0x451408], eax
cmp dword [0x4513b4], ebp
je 0x4355a2
push ebp
mov ecx, 0x45560c
mov dword [0x4513b4], ebp
call fcn.00401a30
cmp dword [0x451408], ebp
jne 0x435591
mov dword [esi], 0x7b
mov dword [0x451404], ebp
jmp 0x43564f
mov dword [0x451408], ebp
mov dword [esi], 0x7c
jmp 0x43574c
cmp dword [0x4513b8], ebp
je 0x435646
push ebp
mov ecx, 0x455614
call fcn.00401a30
mov eax, 1
mov dword [0x4513b8], ebp
mov dword [esi], 0x79
mov edx, 3
mov dword [0x451410], eax
mov ecx, 7
mov dword [0x44d100], eax
mov dword [0x44d0e4], eax
mov dword [0x44d104], eax
mov eax, 4
mov dword [0x451414], ecx
mov dword [0x44d0e0], ebp
mov dword [0x44d0e8], edi
mov dword [0x44d108], edi
mov dword [0x44d0ec], edx
mov dword [0x44d10c], edi
mov dword [0x44d0f0], eax
mov dword [0x44d110], edx
mov dword [0x44d0f4], 5
mov dword [0x44d114], edx
mov dword [0x44d0f8], 6
mov dword [0x44d118], eax
mov dword [0x44d0fc], ecx
mov dword [0x44d11c], eax
cmp dword [esi], 0x7b
jne 0x43573d
mov edi, 0x32
push 4
push 0x101
call fcn.00417190
push 4
push 0x102
mov esi, eax
call fcn.00417190
mov edx, dword [eax*8 + 0x44d0e0]
mov ecx, dword [esi*8 + 0x44d0e0]
mov dword [esi*8 + 0x44d0e0], edx
mov edx, dword [eax*8 + 0x44d0e4]
mov dword [eax*8 + 0x44d0e0], ecx
mov ecx, dword [esi*8 + 0x44d0e4]
mov dword [esi*8 + 0x44d0e4], edx
mov edx, dword [eax*8 + 0x44d100]
mov dword [eax*8 + 0x44d0e4], ecx
mov ecx, dword [esi*8 + 0x44d100]
mov dword [esi*8 + 0x44d100], edx
mov dword [eax*8 + 0x44d100], ecx
mov edx, dword [esi*8 + 0x44d104]
lea ecx, [esi*8 + 0x44d104]
mov esi, dword [eax*8 + 0x44d104]
lea eax, [eax*8 + 0x44d104]
add esp, 0x10
sub edi, 1
mov dword [ecx], esi
mov dword [eax], edx
jne 0x435654
mov ecx, dword [0x451404]
add ecx, 1
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
lea eax, [eax + eax*4]
mov dword [0x451404], ecx
sub ecx, eax
jne 0x43571f
push ebp
mov ecx, 0x455610
call fcn.00401a30
cmp dword [0x451404], 0xa
jle 0x43573d
mov ecx, dword [esp + 0x10]
mov dword [ecx], 0x7a
mov dword [0x451408], ebp
jmp 0x437021
mov edx, dword [esp + 0x10]
mov eax, dword [edx]
cmp eax, 0x7c
jne 0x435857
xor ebp, ebp
mov edi, edi
mov eax, 1
cmp dword [ebp + 0x451344], eax
jne 0x435833
mov ecx, dword [esp + 0x14]
mov ecx, dword [ecx + 0x7d4]
mov edi, dword [ecx + 0x4d82380]
xor esi, esi
cmp edi, eax
jle 0x43581b
lea ebx, [ecx + 4]
mov edi, edi
xor ecx, ecx
cmp dword [0x44d0c0], eax
jne 0x43578f
mov ecx, 1
cmp dword [0x44d0c4], eax
jne 0x43579c
mov ecx, 1
cmp dword [0x44d0c8], eax
jne 0x4357a9
mov ecx, 1
cmp dword [0x44d0cc], eax
jne 0x4357b6
mov ecx, 1
cmp dword [0x44d0d0], eax
jne 0x4357c3
mov ecx, 1
cmp dword [0x44d0d4], eax
jne 0x4357d0
mov ecx, 1
cmp dword [0x44d0d8], eax
jne 0x4357dd
mov ecx, 1
cmp dword [0x44d0dc], eax
jne 0x4357ea
mov ecx, 1
mov edx, dword [ebx]
cmp dword [edx + 0x6f8], 0
jne 0x435809
test ecx, ecx
jne 0x435809
cmp dword [edx + 0x6f4], 0x1e
jge 0x435809
mov dword [esp + esi*4 + 0x40], eax
add esi, 1
add eax, 1
add ebx, 4
cmp eax, edi
jl 0x435780
mov ebx, dword [esp + 0x18]
push esi
push 0x103
call fcn.00417190
mov edx, dword [esp + eax*4 + 0x48]
add esp, 8
mov dword [ebp + 0x44d0c0], edx
add ebp, 4
cmp ebp, 0x20
jl 0x435750
mov eax, dword [esp + 0x10]
mov dword [eax], 0x7d
mov dword [0x451408], 2
xor ebp, ebp
jmp 0x435860
cmp eax, 0x7d
jne 0x435cef
mov ecx, dword [0x4513b0]
mov edx, dword [0x4513ac]
push ebx
push ecx
push edx
push 3
call fcn.00402130
mov ecx, dword [0x451178]
add esp, 0x10
push ebx
push ebp
push ebp
push 8
push 3
push 3
call fcn.0043f100
mov ecx, dword [0x451178]
push ebx
push ebp
mov esi, 1
push esi
push 0xf
push 0x9f
push 3
call fcn.0043f100
cmp dword [0x451408], ebp
jne 0x4358c5
mov ecx, dword [0x451178]
push ebx
push ebp
push ebp
push 9
push 0x10
push 0x5c
call fcn.0043f100
cmp dword [0x451408], esi
jne 0x4358e1
mov ecx, dword [0x451178]
push ebx
push ebp
push ebp
push 0xa
push 0x27
push 0x40
call fcn.0043f100
cmp dword [0x451408], 2
jne 0x4358fe
mov ecx, dword [0x451178]
push ebx
push ebp
push ebp
push 0xb
push 0x40
push 0x28
call fcn.0043f100
cmp dword [0x451408], 3
jne 0x43591b
mov ecx, dword [0x451178]
push ebx
push ebp
push ebp
push 0xc
push 0x57
push 0xf
call fcn.0043f100
cmp dword [0x451408], 4
jne 0x435938
mov ecx, dword [0x451178]
push ebx
push ebp
push ebp
push 0xd
push 0x6f
push 0x25
call fcn.0043f100
cmp dword [0x451408], 5
jne 0x435958
mov ecx, dword [0x451178]
push ebx
push ebp
push ebp
push 0xe
push 0x89
push 0x65
call fcn.0043f100
cmp dword [0x44d028], esi
jne 0x43596c
mov eax, 0x64
mov dword [0x44d024], eax
jmp 0x435971
mov eax, dword [0x44d024]
mov ecx, dword [esp + 0x14]
imul eax, eax, 0x990
mov edx, dword [ecx + 0x7d4]
mov ecx, dword [0x455608]
push 0x5b
push 0xae
push 0xff9b9b
push ebp
lea eax, [eax + edx + 0x4d4617c]
push eax
push ecx
call fcn.00401290
mov eax, dword [0x450c30]
add esp, 0x18
cmp eax, 2
jne 0x4359d8
mov edx, dword [0x455608]
push 0x73
push 0xae
push 0xff9b9b
push ebp
push str.Easy
push edx
call fcn.00401290
add esp, 0x18
or esi, 0xffffffff
jmp 0x435a53
cmp eax, esi
jne 0x435a01
mov eax, dword [0x455608]
push 0x73
push 0xae
push 0xff9b9b
push ebp
push str.Normal
push eax
call fcn.00401290
add esp, 0x18
or esi, 0xffffffff
jmp 0x435a53
cmp eax, ebp
jne 0x435a2b
mov ecx, dword [0x455608]
push 0x73
push 0xae
push 0xff9b9b
push ebp
push str.Difficult
push ecx
call fcn.00401290
add esp, 0x18
or esi, 0xffffffff
jmp 0x435a53
or esi, 0xffffffff
cmp eax, esi
jne 0x435a53
mov edx, dword [0x455608]
push 0x73
push 0xae
push 0xff9b9b
push ebp
push str.Difficult
push edx
call fcn.00401290
add esp, 0x18
cmp dword [0x4513a4], ebp
mov edi, 1
je 0x435a7a
mov eax, dword [0x451408]
sub eax, edi
cmp eax, esi
mov dword [0x451408], eax
jne 0x435a7a
mov dword [0x451408], 5
cmp dword [0x4513a8], ebp
je 0x435a98
mov eax, dword [0x451408]
add eax, 1
cdq
mov ecx, 6
idiv ecx
mov dword [0x451408], edx
cmp dword [0x4513b4], ebp
je 0x435c52
push ebp
mov ecx, 0x455610
mov dword [0x4513b4], ebp
call fcn.00401a30
mov eax, dword [0x451408]
cmp eax, ebp
mov edi, dword [esp + 0x10]
mov ebx, 2
jne 0x435b78
mov dword [edi], 0x7e
mov eax, 0x1f4
mov dword [0x44d080], eax
mov dword [0x44d0a0], esi
mov dword [0x451384], ebx
mov dword [0x44d084], eax
mov dword [0x44d0a4], esi
mov dword [0x451388], ebx
mov dword [0x44d088], eax
mov dword [0x44d0a8], esi
mov dword [0x45138c], ebx
mov dword [0x44d08c], eax
mov dword [0x44d0ac], esi
mov dword [0x451390], ebx
mov dword [0x44d090], eax
mov dword [0x44d0b0], esi
mov dword [0x451394], ebx
mov dword [0x44d094], eax
mov dword [0x44d0b4], esi
mov dword [0x451398], ebx
mov dword [0x44d098], eax
mov dword [0x44d0b8], esi
mov dword [0x45139c], ebx
mov dword [0x44d09c], eax
mov dword [0x44d0bc], esi
mov dword [0x4513a0], ebx
mov dword [0x451404], 0x19
mov dword [0x44d318], ebp
call fcn.004025b0
mov eax, dword [0x451408]
mov esi, 1
cmp eax, esi
jne 0x435b8c
mov dword [edi], 0x78
jmp 0x437021
cmp eax, ebx
jne 0x435b9b
mov dword [edi], 0x7c
jmp 0x437021
cmp eax, 3
jne 0x435c0c
push ebp
mov ecx, 0x455610
call fcn.00401a30
mov eax, dword [0x44d024]
cmp eax, 0x64
mov dword [0x44d028], ebp
jne 0x435bca
mov dword [0x44d024], 0x63
jmp 0x435cef
cmp eax, 0x63
jne 0x435bda
mov dword [0x44d024], ebp
jmp 0x435cef
mov edx, dword [esp + 0x14]
add eax, esi
mov dword [0x44d024], eax
mov ecx, dword [edx + 0x7d4]
cmp eax, dword [ecx + 0x4d82384]
jne 0x435cef
mov dword [0x44d024], 0x64
mov dword [0x44d028], esi
jmp 0x435cef
cmp eax, 4
jne 0x435c2f
sub dword [0x450c30], esi
jns 0x435c1f
mov dword [0x450c30], ebx
push ebp
mov ecx, 0x455610
call fcn.00401a30
jmp 0x435cef
cmp eax, 5
jne 0x435cef
mov ecx, dword [esp + 0x14]
mov dword [edi], 0xa
call fcn.00431cd0
mov dword [0x457580], ebp
jmp 0x435cef
cmp dword [0x4513b8], ebp
je 0x435cef
push ebp
mov ecx, 0x455614
mov dword [0x4513b8], ebp
call fcn.00401a30
mov edx, dword [esp + 0x10]
mov dword [edx], 0x7a
cmp dword [0x451344], edi
mov dword [0x451408], ebp
jne 0x435c8d
mov dword [0x44d0c0], esi
cmp dword [0x451348], edi
jne 0x435c9b
mov dword [0x44d0c4], esi
cmp dword [0x45134c], edi
jne 0x435ca9
mov dword [0x44d0c8], esi
cmp dword [0x451350], edi
jne 0x435cb7
mov dword [0x44d0cc], esi
cmp dword [0x451354], edi
jne 0x435cc5
mov dword [0x44d0d0], esi
cmp dword [0x451358], edi
jne 0x435cd3
mov dword [0x44d0d4], esi
cmp dword [0x45135c], edi
jne 0x435ce1
mov dword [0x44d0d8], esi
cmp dword [0x451360], edi
jne 0x435cef
mov dword [0x44d0dc], esi
mov eax, dword [esp + 0x10]
cmp dword [eax], 0x7e
jl 0x435dc9
mov dword [esp + 0x24], 0
mov dword [esp + 0x1c], 0x44d168
lea esp, [esp]
mov ecx, dword [esp + 0x24]
mov ebp, dword [ecx*4 + 0x451384]
cmp ebp, 7
jle 0x435d27
mov ebp, 7
jmp 0x435d29
jne 0x435d4b
mov eax, dword [esp + 0x10]
cmp dword [eax], 0x81
jge 0x435d4b
mov dword [eax], 0x81
mov dword [0x451400], ecx
mov dword [0x451404], 0
cmp ebp, 7
mov ebx, 0xffffff
jge 0x435d6e
mov ecx, ebp
and ecx, reloc.DSOUND.dll_DirectSoundCreate
jns 0x435d64
dec ecx
or ecx, 0xfffffffe
inc ecx
cmp ecx, 1
jne 0x435d6e
mov ebx, 0x192f67
mov esi, 2
cmp ebp, esi
jle 0x435db0
mov edi, dword [esp + 0x1c]
jmp 0x435d80
mov edx, dword [esi*8 + 0x44d124]
mov eax, dword [esi*8 + 0x44d120]
mov ecx, dword [edi + 4]
push ebx
push edx
mov edx, dword [edi]
push eax
add ecx, 0x7e
push ecx
sub edx, 0x33
push edx
call fcn.00437040
add esi, 1
add esp, 0x14
add edi, 8
cmp esi, ebp
jl 0x435d80
mov eax, dword [esp + 0x24]
add dword [esp + 0x1c], 0x70
add eax, 2
cmp eax, 8
mov dword [esp + 0x24], eax
jl 0x435d10
mov eax, dword [esp + 0x10]
cmp dword [eax], 0x7e
jne 0x435e28
mov edx, dword [0x44d318]
xor ecx, ecx
mov dword [0x4513fc], ecx
xor eax, eax
cmp dword [eax*4 + 0x451384], edx
jne 0x435e04
mov dword [ecx*4 + 0x4513ec], eax
lea esi, [eax + 1]
mov dword [ecx*4 + 0x4513f0], esi
add ecx, 2
cmp ecx, 4
je 0x435e0c
add eax, 2
cmp eax, 8
jl 0x435de2
test ecx, ecx
mov dword [0x4513fc], ecx
jne 0x435fcb
cmp edx, 6
jge 0x435e28
add edx, 2
mov dword [0x44d318], edx
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
cmp dword [eax], 0x7f
jne 0x436b6d
mov esi, dword [0x451404]
cmp esi, 4
jge 0x43659f
mov ecx, dword [0x45140c]
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax + eax*4]
add edx, edx
sub ecx, edx
cmp ecx, 5
jge 0x435ed4
mov eax, dword [esi*4 + 0x4513ec]
mov ebp, dword [eax*4 + 0x451384]
add ebp, 1
cmp ebp, 7
jle 0x435e86
mov ebp, 7
mov esi, 2
cmp ebp, esi
jle 0x435ed4
lea edi, [eax*8]
sub edi, eax
lea edi, [edi*8 + 0x44d168]
nop
mov eax, dword [esi*8 + 0x44d124]
mov ecx, dword [esi*8 + 0x44d120]
mov edx, dword [edi + 4]
push 0xffa7a7
push eax
mov eax, dword [edi]
push ecx
add edx, 0x7e
push edx
sub eax, 0x33
push eax
call fcn.00437040
add esi, 1
add esp, 0x14
add edi, 8
cmp esi, ebp
jl 0x435ea0
mov ecx, dword [0x451404]
mov edx, dword [ecx*4 + 0x4513ec]
mov eax, dword [edx*4 + 0x44d0e0]
cmp dword [eax*4 + 0x451364], 0
jle 0x43658f
mov esi, dword [esp + 0x18]
mov ecx, dword [0x45116c]
push esi
push 0
push 0
push 0xa
push 0xa
push 0xa
call fcn.0043f100
mov ecx, dword [0x451404]
mov edx, dword [ecx*4 + 0x4513ec]
mov eax, dword [edx*4 + 0x44d0e0]
mov ecx, dword [eax*4 + 0x451364]
push esi
push 0
push 0
add ecx, 0xa
push ecx
mov ecx, dword [0x45116c]
push 0x18
push 0xa9
call fcn.0043f100
mov edx, dword [0x451404]
mov eax, dword [edx*4 + 0x4513ec]
mov ecx, dword [eax*4 + 0x44d0e0]
mov edx, dword [ecx*4 + 0x44d0c0]
mov eax, dword [ebx + 0x7d4]
mov ecx, dword [eax + edx*4]
mov ecx, dword [ecx + 0x6fc]
push esi
push 0
push 0
push 0xffffffffffffffff
push 0x31
push 0x5a
call fcn.0043f100
xor esi, esi
lea edi, [ebx + 0x194]
jmp 0x435f90
mov eax, dword [edi]
cmp byte [eax + 0xd1], 0
je 0x435fbb
cmp byte [eax + 0xca], 0
jne 0x435fbb
cmp byte [ebx + esi + 4], 1
push 0
jne 0x436520
mov ecx, 0x455614
call fcn.00401a30
add esi, 1
add edi, 4
cmp esi, 8
jl 0x435f90
jmp 0x43659f
cmp ecx, 4
jne 0x435e28
cmp dword [0x451404], 0x1e
jle 0x436074
mov ecx, dword [0x45140c]
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax + eax*4]
mov eax, dword [0x4513ec]
add edx, edx
sub ecx, edx
cmp ecx, 5
jl 0x43600e
mov eax, dword [0x4513f4]
mov ebp, dword [eax*4 + 0x451384]
add ebp, 2
cmp ebp, 7
jle 0x436022
mov ebp, 7
mov esi, 2
cmp ebp, esi
jle 0x436074
lea edi, [eax*8]
sub edi, eax
lea edi, [edi*8 + 0x44d168]
jmp 0x436040
mov eax, dword [esi*8 + 0x44d124]
mov ecx, dword [esi*8 + 0x44d120]
mov edx, dword [edi + 4]
push 0xffa7a7
push eax
mov eax, dword [edi]
push ecx
add edx, 0x7e
push edx
sub eax, 0x33
push eax
call fcn.00437040
add esi, 1
add esp, 0x14
add edi, 8
cmp esi, ebp
jl 0x436040
mov esi, 1
add dword [0x451404], esi
cmp dword [0x4513b8], 0
je 0x436094
mov dword [0x451404], 0x50
jmp 0x4360a1
cmp dword [0x451404], 0x50
jne 0x435e28
mov ecx, dword [0x4513ec]
mov edx, dword [ecx*4 + 0x44d0e0]
cmp dword [edx*4 + 0x451364], 0
jne 0x436459
mov eax, dword [0x4513f0]
mov ecx, dword [eax*4 + 0x44d0e0]
cmp dword [ecx*4 + 0x451364], 0
jne 0x436459
mov edx, dword [0x4513f4]
mov eax, dword [edx*4 + 0x44d0e0]
cmp dword [eax*4 + 0x451364], 0
jne 0x436459
mov ecx, dword [0x4513f8]
mov edx, dword [ecx*4 + 0x44d0e0]
cmp dword [edx*4 + 0x451364], 0
jne 0x436459
push 0
mov ecx, 0x45560c
call fcn.00401a30
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0x7d4]
mov edx, dword [0x4513ec]
mov eax, dword [edx*4 + 0x44d0e0]
mov edx, dword [eax*4 + 0x44d0c0]
mov eax, dword [ecx + edx*4]
mov edx, dword [eax + 0x6f4]
mov ebx, dword [0x4513f8]
mov ebp, dword [0x4513f4]
mov edi, dword [0x4513f0]
mov eax, 0x66666667
imul edx
sar edx, 2
mov esi, edx
shr esi, 0x1f
add esi, edx
cmp esi, 5
mov dword [0x451404], 0
je 0x43623a
mov edx, dword [edi*4 + 0x44d0e0]
mov eax, dword [edx*4 + 0x44d0c0]
mov edx, dword [ecx + eax*4]
mov edx, dword [edx + 0x6f4]
mov eax, 0x66666667
imul edx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 5
je 0x436208
mov edx, dword [ebp*4 + 0x44d0e0]
mov eax, dword [edx*4 + 0x44d0c0]
mov edx, dword [ecx + eax*4]
mov edx, dword [edx + 0x6f4]
mov eax, 0x66666667
imul edx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 5
je 0x436208
mov edx, dword [ebx*4 + 0x44d0e0]
mov eax, dword [edx*4 + 0x44d0c0]
mov edx, dword [ecx + eax*4]
mov edx, dword [edx + 0x6f4]
mov eax, 0x66666667
imul edx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 5
je 0x436208
push 2
push 0x105
jmp 0x436339
cmp esi, 5
je 0x43623a
mov edx, dword [edi*4 + 0x44d0e0]
mov eax, dword [edx*4 + 0x44d0c0]
mov edx, dword [ecx + eax*4]
mov edx, dword [edx + 0x6f4]
mov eax, 0x66666667
imul edx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 5
jne 0x43629b
mov edx, dword [ebp*4 + 0x44d0e0]
mov eax, dword [edx*4 + 0x44d0c0]
mov edx, dword [ecx + eax*4]
mov edx, dword [edx + 0x6f4]
mov eax, 0x66666667
imul edx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 5
je 0x43629b
mov edx, dword [ebx*4 + 0x44d0e0]
mov eax, dword [edx*4 + 0x44d0c0]
mov edx, dword [ecx + eax*4]
mov edx, dword [edx + 0x6f4]
mov eax, 0x66666667
imul edx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 5
je 0x43629b
xor eax, eax
jmp 0x436343
cmp esi, 5
je 0x436332
mov edx, dword [edi*4 + 0x44d0e0]
mov eax, dword [edx*4 + 0x44d0c0]
mov edx, dword [ecx + eax*4]
mov edx, dword [edx + 0x6f4]
mov eax, 0x66666667
imul edx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 5
je 0x436332
mov edx, dword [ebp*4 + 0x44d0e0]
mov eax, dword [edx*4 + 0x44d0c0]
mov edx, dword [ecx + eax*4]
mov edx, dword [edx + 0x6f4]
mov eax, 0x66666667
imul edx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 5
je 0x43632b
mov edx, dword [ebx*4 + 0x44d0e0]
mov eax, dword [edx*4 + 0x44d0c0]
mov ecx, dword [ecx + eax*4]
mov ecx, dword [ecx + 0x6f4]
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 5
jne 0x436332
mov eax, 2
jmp 0x436343
push 2
push 0x106
call fcn.00417190
add esp, 8
add eax, eax
lea edi, [eax*4]
mov eax, dword [edi + 0x4513ec]
mov ecx, dword [edi + 0x4513f0]
mov edx, 2
add dword [eax*4 + 0x451384], edx
add dword [ecx*4 + 0x451384], edx
mov edx, 0x4513f4
sub edx, edi
mov edx, dword [edx]
mov esi, 1
add dword [edx*4 + 0x451384], esi
mov edx, 0x4513f8
sub edx, edi
mov edx, dword [edx]
add dword [edx*4 + 0x451384], esi
mov edx, 6
cmp dword [eax*4 + 0x451384], edx
jne 0x4363a7
mov dword [eax*4 + 0x451384], 7
cmp dword [ecx*4 + 0x451384], edx
jne 0x4363bb
mov dword [ecx*4 + 0x451384], 7
mov eax, dword [0x450c30]
mov ebp, dword [edi + 0x4513ec]
lea esi, [eax + eax*8]
lea eax, [eax + eax*8]
lea ecx, [eax + eax + 0xf]
push ecx
push 0x107
add esi, esi
call fcn.00417190
mov ecx, eax
mov edx, 0x55
sub edx, esi
add ecx, edx
imul ecx, dword [ebp*4 + 0x44d080]
mov edi, dword [edi + 0x4513f0]
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add esi, 0xf
add eax, edx
push esi
push 0x108
mov dword [ebp*4 + 0x44d080], eax
call fcn.00417190
mov ecx, eax
mov eax, dword [0x450c30]
lea edx, [eax + eax*8]
add edx, edx
mov eax, 0x55
sub eax, edx
add ecx, eax
imul ecx, dword [edi*4 + 0x44d080]
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
add esp, 0x10
add ecx, edx
mov dword [edi*4 + 0x44d080], ecx
jmp 0x435e28
mov ebx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
push 0x190
lea eax, [ebx + 4]
push 0
push eax
mov dword [edx], 0x7f
mov dword [0x451404], 0
call sub.MSVCR80.dll_memset
or eax, 0xffffffff
mov dword [0x4512d0], eax
mov dword [0x4512d4], eax
mov dword [0x4512d8], eax
mov dword [0x4512dc], eax
mov dword [0x4512e0], eax
mov dword [0x4512e4], eax
mov dword [0x4512e8], eax
mov dword [0x4512ec], eax
mov dword [0x4512f0], eax
mov dword [0x4512f4], eax
mov dword [0x4512f8], eax
mov dword [0x4512fc], eax
mov dword [0x451300], eax
mov dword [0x451304], eax
mov dword [0x451308], eax
mov dword [0x45130c], eax
mov dword [0x451310], eax
mov dword [0x451314], eax
mov dword [0x451318], eax
mov dword [0x45131c], eax
mov eax, dword [0x4513ec]
add dword [eax*4 + 0x451384], esi
mov eax, dword [0x4513f0]
add dword [eax*4 + 0x451384], esi
mov eax, dword [0x4513f4]
add dword [eax*4 + 0x451384], esi
mov eax, dword [0x4513f8]
add esp, 0xc
add dword [eax*4 + 0x451384], esi
jmp 0x435e2c
mov dword [0x4513b4], 0
mov edx, dword [ebx + esi*4 + 0x194]
mov ecx, 0x45560c
mov byte [edx + 0xca], 1
call fcn.00401a30
mov eax, dword [0x451404]
mov ecx, dword [eax*4 + 0x4513ec]
mov dword [esi*4 + 0x4512d0], ecx
mov byte [ebx + esi + 4], 1
mov edx, dword [eax*4 + 0x4513ec]
mov ecx, dword [edx*4 + 0x44d0e0]
mov edx, dword [ecx*4 + 0x44d0c0]
mov ecx, dword [ebx + 0x7d4]
mov esi, dword [ebx + esi*4 + 0x194]
mov edx, dword [ecx + edx*4]
add eax, 1
mov dword [esi + 0x368], edx
mov dword [0x451404], eax
jmp 0x43659f
mov eax, 1
add dword [0x451404], eax
mov dword [0x451408], eax
cmp dword [0x451404], 4
jne 0x436728
mov esi, dword [esp + 0x18]
mov ecx, dword [0x45116c]
push esi
xor edi, edi
push edi
push edi
push 2
push 0xa2
push 0x116
call fcn.0043f100
mov ecx, dword [0x45116c]
push esi
push edi
push edi
push 4
push 0xb3
push 0x13a
call fcn.0043f100
mov ecx, dword [0x45116c]
push esi
push edi
push edi
push 5
push 0xe8
push 0x142
call fcn.0043f100
mov ecx, dword [0x45116c]
push esi
push edi
push edi
push 6
push 0xe8
push 0x1aa
call fcn.0043f100
cmp dword [0x451408], edi
mov ecx, dword [0x45116c]
push esi
push edi
push edi
jne 0x436639
push 7
push 0xe5
push 0x13f
jmp 0x436645
push 8
push 0xe6
push 0x1a4
call fcn.0043f100
cmp dword [0x4513ac], edi
jne 0x43665a
cmp dword [0x4513b0], edi
je 0x43666a
mov eax, 1
sub eax, dword [0x451408]
mov dword [0x451408], eax
cmp dword [0x4513b4], edi
je 0x436728
push edi
mov ecx, 0x45560c
mov dword [0x4513b4], edi
call fcn.00401a30
cmp dword [0x451408], edi
mov dword [0x4513b4], edi
jne 0x4366a4
mov dword [0x451404], 5
jmp 0x436735
push 0x190
lea eax, [ebx + 4]
push edi
push eax
mov dword [0x451404], edi
call sub.MSVCR80.dll_memset
add esp, 0xc
or eax, 0xffffffff
mov dword [0x4512d0], eax
mov dword [0x4512d4], eax
mov dword [0x4512d8], eax
mov dword [0x4512dc], eax
mov dword [0x4512e0], eax
mov dword [0x4512e4], eax
mov dword [0x4512e8], eax
mov dword [0x4512ec], eax
mov dword [0x4512f0], eax
mov dword [0x4512f4], eax
mov dword [0x4512f8], eax
mov dword [0x4512fc], eax
mov dword [0x451300], eax
mov dword [0x451304], eax
mov dword [0x451308], eax
mov dword [0x45130c], eax
mov dword [0x451310], eax
mov dword [0x451314], eax
mov dword [0x451318], eax
mov dword [0x45131c], eax
jmp 0x436b6d
cmp dword [0x451404], 5
jne 0x436b6d
mov edi, 0x4513ec
mov ebp, 1
nop
mov ecx, dword [edi]
mov edx, dword [ecx*4 + 0x44d0e0]
cmp dword [edx*4 + 0x451364], 0
jne 0x4367ac
xor esi, esi
cmp byte [ebx + esi + 4], 0
jne 0x436763
cmp byte [ebx + esi + 0xe], 0
je 0x43676c
add esi, ebp
cmp esi, 8
jl 0x436755
jmp 0x4367ac
push 0
mov ecx, 0x45560c
call fcn.00401a30
mov eax, dword [edi]
mov dword [esi*4 + 0x4512f8], eax
mov byte [ebx + esi + 0xe], 1
mov ecx, dword [edi]
mov edx, dword [ecx*4 + 0x44d0e0]
mov eax, dword [edx*4 + 0x44d0c0]
mov ecx, dword [ebx + 0x7d4]
mov edx, dword [ebx + esi*4 + 0x1bc]
mov eax, dword [ecx + eax*4]
mov dword [edx + 0x368], eax
add edi, 4
cmp edi, 0x4513fc
jl 0x436740
mov ecx, dword [esp + 0x10]
lea edx, [esp + 0x30]
push edx
mov dword [ecx], 0
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
movzx eax, word [esp + 0x3c]
movzx ecx, word [esp + 0x3a]
movzx edx, word [esp + 0x38]
mov esi, dword [sym.imp.MSVCR80.dll_sprintf]
push eax
movzx eax, word [esp + 0x3a]
push ecx
movzx ecx, word [esp + 0x3a]
push edx
movzx edx, word [esp + 0x3c]
push eax
push ecx
push edx
lea eax, [esp + 0x828]
push str._4d_02d_02d__02d_02d_02d
push eax
call esi
lea eax, [esp + 0x830]
add esp, 0x20
add eax, 0xffffffff
mov cl, byte [eax + 1]
add eax, 1
test cl, cl
jne 0x436812
mov ecx, dword [str._2on2_]
mov dx, word [0x449d08]
mov dword [eax], ecx
mov cl, byte [0x449d0a]
mov word [eax + 4], dx
mov byte [eax + 6], cl
mov eax, dword [0x44d318]
cmp eax, 2
jne 0x436878
lea eax, [esp + 0x810]
add eax, 0xffffffff
lea esp, [esp]
mov cl, byte [eax + 1]
add eax, 1
test cl, cl
jne 0x436850
mov edx, dword [str.SemiFinal]
mov ecx, dword [0x449ce0]
mov dword [eax], edx
mov dx, word [0x449ce4]
mov dword [eax + 4], ecx
mov word [eax + 8], dx
jmp 0x4368a4
cmp eax, 4
jne 0x4368a4
lea eax, [esp + 0x810]
add eax, 0xffffffff
mov cl, byte [eax + 1]
add eax, 1
test cl, cl
jne 0x436887
mov ecx, dword [str.Final]
mov dx, word [0x449cd8]
mov dword [eax], ecx
mov word [eax + 4], dx
lea eax, [esp + 0x810]
push eax
push 0x4499c0
push 0x44fd98
call esi
add esp, 0xc
cmp dword [0x450be4], 0
mov dword [0x450b6c], 0
je 0x4368d4
mov dword [0x450b70], ebp
cmp dword [0x44d028], ebp
jne 0x43691d
mov ecx, dword [ebx + 0x7d4]
mov edx, dword [ecx + 0x4d82384]
sub edx, 2
push edx
push 0x109
call fcn.00417190
mov dword [0x44d024], eax
mov ecx, dword [ebx + 0x7d4]
mov edx, dword [ecx + 0x4d82384]
sub edx, 3
add esp, 8
cmp eax, edx
jne 0x436922
mov eax, 0x63
mov dword [0x44d024], eax
jmp 0x436922
mov eax, dword [0x44d024]
mov dword [esp + 0x24], eax
xor eax, eax
xor ebp, ebp
lea esi, [ebx + 0x194]
cmp byte [ebx + ebp + 4], 0
je 0x436a91
mov edi, dword [esi]
mov ebx, dword [edi + 0x368]
mov ecx, edi
call fcn.004061e0
fld qword [0x4499b8]
mov dword [edi + 0x368], ebx
mov eax, dword [ebx + 0x90]
fstp qword [edi + 0x58]
fldz
mov dword [edi + 0x31c], eax
fstp qword [edi + 0x60]
mov ebx, dword [esp + 0x14]
fld qword [0x447920]
fstp qword [edi + 0x68]
mov ecx, dword [esi]
mov dword [ecx + 0x308], 0x1f4
mov edx, dword [ebp*4 + 0x4512d0]
mov ecx, dword [edx*4 + 0x44d080]
mov eax, dword [esi]
mov dword [eax + 0x2fc], ecx
mov eax, dword [esi]
mov edx, dword [eax + 0x2fc]
mov edi, dword [esp + 0x24]
mov dword [eax + 0x300], edx
imul edi, edi, 0x990
mov eax, dword [esi]
mov ecx, dword [eax + 0x300]
mov dword [eax + 0x304], ecx
mov edx, dword [ebp*4 + 0x4512d0]
mov ecx, dword [edx*4 + 0x44d0a0]
mov eax, dword [esi]
mov dword [eax + 0x33c], ecx
mov edx, dword [ebp*4 + 0x4512d0]
mov ecx, dword [edx*4 + 0x44d100]
mov eax, dword [esi]
mov dword [eax + 0x364], ecx
mov edx, dword [esi]
mov dword [edx + 8], 0x4b
mov eax, dword [ebx + 0x7d4]
mov eax, dword [edi + eax + 0x4d45db0]
cdq
sub eax, edx
sar eax, 1
push eax
push 0x10a
call fcn.00417190
mov edx, dword [ebx + 0x7d4]
mov ecx, eax
mov eax, dword [edi + edx + 0x4d45db0]
cdq
and edx, 3
add eax, edx
sar eax, 2
add ecx, eax
mov eax, dword [esi]
mov dword [eax + 0x10], ecx
mov ecx, dword [ebx + 0x7d4]
mov edx, dword [edi + ecx + 0x4d45db8]
sub edx, dword [edi + ecx + 0x4d45db4]
lea eax, [edi + ecx]
push edx
push 0x10b
call fcn.00417190
mov ecx, dword [ebx + 0x7d4]
mov edx, dword [esi]
add esp, 0x10
add eax, dword [edi + ecx + 0x4d45db4]
mov dword [edx + 0x18], eax
mov eax, dword [esi]
mov dword [eax + 0x14], 0
mov eax, dword [esi]
fild dword [eax + 0x10]
fstp qword [eax + 0x58]
mov eax, dword [esi]
fild dword [eax + 0x18]
fstp qword [eax + 0x68]
mov ecx, dword [esi]
fldz
fstp qword [ecx + 0x60]
mov edx, dword [esi]
mov dword [edx + 0x354], ebp
xor eax, eax
add ebp, 1
add esi, 4
cmp ebp, 0x14
jl 0x436930
mov dword [0x450c24], eax
mov dword [0x450c20], eax
mov dword [0x450c1c], eax
mov dword [0x450c18], eax
mov dword [0x450c14], eax
mov dword [0x450c10], eax
mov dword [0x450c0c], eax
mov dword [0x450c08], eax
mov dword [0x450c04], eax
mov dword [0x450c28], eax
mov ecx, dword [ebx + 0x7d4]
xor esi, esi
cmp dword [ecx + 0x4d82384], eax
jle 0x436af9
push esi
call fcn.0040c0f0
mov ecx, dword [ebx + 0x7d4]
add esi, 1
cmp esi, dword [ecx + 0x4d82384]
jl 0x436ae2
mov eax, dword [0x44d024]
cmp eax, 0x63
je 0x436b0f
mov ecx, dword [ebx + 0x7d4]
push eax
call fcn.0040c040
mov dword [0x44d034], 1
mov dword [0x450bbc], 0
mov esi, 0x14
lea edi, [ebx + 0x1e4]
mov edi, edi
cmp byte [esi + ebx + 4], 0
lea ebp, [ebx + 4]
jne 0x436b41
mov ecx, dword [edi]
call fcn.004061e0
add esi, 1
add edi, 4
cmp esi, 0x190
jl 0x436b30
mov ecx, ebx
call fcn.00431cd0
lea eax, [ebx + 0x194]
push eax
mov eax, dword [esp + 0x30]
mov ecx, dword [eax]
push ebp
push ecx
call fcn.0043d3c0
add esp, 0xc
mov edi, dword [esp + 0x10]
cmp dword [edi], 0x80
jne 0x436ee2
mov esi, 0x4512d4
lea ecx, [ebx + 0x198]
mov edi, 7
lea ecx, [ecx]
cmp dword [esi - 4], 0xffffffff
jle 0x436c0a
mov edx, dword [ecx - 4]
cmp dword [edx + 0x2fc], 0
jg 0x436bbe
mov edi, edx
mov eax, dword [edi + 0x300]
cdq
sub eax, edx
sar eax, 1
mov dword [edi + 0x300], eax
mov edi, 7
mov eax, dword [esi - 4]
mov edx, dword [ecx - 4]
mov edx, dword [edx + 0x300]
add eax, eax
add eax, eax
mov dword [eax + 0x44d080], edx
mov edx, dword [ecx - 4]
mov edx, dword [edx + 0x33c]
mov dword [eax + 0x44d0a0], edx
mov edx, dword [ecx - 4]
mov edx, dword [edx + 0x364]
cmp edx, dword [0x450bf8]
jne 0x436c0a
add dword [eax + 0x451384], 1
cmp dword [eax + 0x451384], 6
jne 0x436c0a
mov dword [eax + 0x451384], edi
cmp dword [esi], 0xffffffff
jle 0x436c7e
mov eax, dword [ecx]
cmp dword [eax + 0x2fc], 0
jg 0x436c36
mov edi, eax
mov eax, dword [edi + 0x300]
cdq
sub eax, edx
sar eax, 1
mov dword [edi + 0x300], eax
mov edi, 7
mov eax, dword [esi]
mov edx, dword [ecx]
mov edx, dword [edx + 0x300]
add eax, eax
add eax, eax
mov dword [eax + 0x44d080], edx
mov edx, dword [ecx]
mov edx, dword [edx + 0x33c]
mov dword [eax + 0x44d0a0], edx
mov edx, dword [ecx]
mov edx, dword [edx + 0x364]
cmp edx, dword [0x450bf8]
jne 0x436c7e
add dword [eax + 0x451384], 1
cmp dword [eax + 0x451384], 6
jne 0x436c7e
mov dword [eax + 0x451384], edi
cmp dword [esi + 4], 0xffffffff
jle 0x436cf8
mov eax, dword [ecx + 4]
cmp dword [eax + 0x2fc], 0
jg 0x436cac
mov edi, eax
mov eax, dword [edi + 0x300]
cdq
sub eax, edx
sar eax, 1
mov dword [edi + 0x300], eax
mov edi, 7
mov eax, dword [esi + 4]
mov edx, dword [ecx + 4]
mov edx, dword [edx + 0x300]
add eax, eax
add eax, eax
mov dword [eax + 0x44d080], edx
mov edx, dword [ecx + 4]
mov edx, dword [edx + 0x33c]
mov dword [eax + 0x44d0a0], edx
mov edx, dword [ecx + 4]
mov edx, dword [edx + 0x364]
cmp edx, dword [0x450bf8]
jne 0x436cf8
add dword [eax + 0x451384], 1
cmp dword [eax + 0x451384], 6
jne 0x436cf8
mov dword [eax + 0x451384], edi
cmp dword [esi + 8], 0xffffffff
jle 0x436d72
mov eax, dword [ecx + 8]
cmp dword [eax + 0x2fc], 0
jg 0x436d26
mov edi, eax
mov eax, dword [edi + 0x300]
cdq
sub eax, edx
sar eax, 1
mov dword [edi + 0x300], eax
mov edi, 7
mov eax, dword [esi + 8]
mov edx, dword [ecx + 8]
mov edx, dword [edx + 0x300]
add eax, eax
add eax, eax
mov dword [eax + 0x44d080], edx
mov edx, dword [ecx + 8]
mov edx, dword [edx + 0x33c]
mov dword [eax + 0x44d0a0], edx
mov edx, dword [ecx + 8]
mov edx, dword [edx + 0x364]
cmp edx, dword [0x450bf8]
jne 0x436d72
add dword [eax + 0x451384], 1
cmp dword [eax + 0x451384], 6
jne 0x436d72
mov dword [eax + 0x451384], edi
cmp dword [esi + 0xc], 0xffffffff
jle 0x436dec
mov eax, dword [ecx + 0xc]
cmp dword [eax + 0x2fc], 0
jg 0x436da0
mov edi, eax
mov eax, dword [edi + 0x300]
cdq
sub eax, edx
sar eax, 1
mov dword [edi + 0x300], eax
mov edi, 7
mov eax, dword [esi + 0xc]
mov edx, dword [ecx + 0xc]
mov edx, dword [edx + 0x300]
add eax, eax
add eax, eax
mov dword [eax + 0x44d080], edx
mov edx, dword [ecx + 0xc]
mov edx, dword [edx + 0x33c]
mov dword [eax + 0x44d0a0], edx
mov edx, dword [ecx + 0xc]
mov edx, dword [edx + 0x364]
cmp edx, dword [0x450bf8]
jne 0x436dec
add dword [eax + 0x451384], 1
cmp dword [eax + 0x451384], 6
jne 0x436dec
mov dword [eax + 0x451384], edi
add esi, 0x14
add ecx, 0x14
cmp esi, 0x451324
jl 0x436b90
cmp dword [0x450bf8], 0xffffffff
jne 0x436e5e
push 2
push 0x10c
call fcn.00417190
add eax, eax
mov ecx, dword [eax*4 + 0x4513ec]
mov eax, dword [eax*4 + 0x4513f0]
mov edx, 1
add dword [ecx*4 + 0x451384], edx
add dword [eax*4 + 0x451384], edx
mov edx, 6
add esp, 8
cmp dword [ecx*4 + 0x451384], edx
jne 0x436e4e
mov dword [ecx*4 + 0x451384], edi
cmp dword [eax*4 + 0x451384], edx
jne 0x436e5e
mov dword [eax*4 + 0x451384], edi
mov edi, dword [esp + 0x10]
push 0x190
lea eax, [ebx + 4]
push 0
push eax
mov dword [edi], 0x7e
call sub.MSVCR80.dll_memset
add esp, 0xc
or eax, 0xffffffff
mov dword [0x4512d0], eax
mov dword [0x4512d4], eax
mov dword [0x4512d8], eax
mov dword [0x4512dc], eax
mov dword [0x4512e0], eax
mov dword [0x4512e4], eax
mov dword [0x4512e8], eax
mov dword [0x4512ec], eax
mov dword [0x4512f0], eax
mov dword [0x4512f4], eax
mov dword [0x4512f8], eax
mov dword [0x4512fc], eax
mov dword [0x451300], eax
mov dword [0x451304], eax
mov dword [0x451308], eax
mov dword [0x45130c], eax
mov dword [0x451310], eax
mov dword [0x451314], eax
mov dword [0x451318], eax
mov dword [0x45131c], eax
cmp dword [edi], 0x81
jne 0x437021
mov eax, dword [0x451404]
cmp eax, 0x32
jge 0x436f00
add eax, 1
mov dword [0x451404], eax
cmp eax, 0x14
jle 0x437021
cmp eax, 0x15
jne 0x436f1f
call fcn.00402100
push 0
mov ecx, 0x455618
call fcn.00401a30
mov esi, dword [esp + 0x18]
mov ecx, dword [0x45116c]
push esi
push 0
push 0
push 0xa
push 0xa
push 0xa
call fcn.0043f100
mov ecx, dword [0x45116c]
push esi
push 0
push 0
push 0x15
push 0x16
push 0x6d
call fcn.0043f100
mov eax, dword [0x451400]
mov ecx, dword [eax*4 + 0x44d100]
push esi
push 0
push 0
add ecx, 0xa
push ecx
mov ecx, dword [0x45116c]
push 0x18
push 0xa9
call fcn.0043f100
mov edx, dword [0x451400]
mov eax, dword [edx*4 + 0x44d0e0]
mov ecx, dword [eax*4 + 0x44d0c0]
mov edx, dword [ebx + 0x7d4]
mov eax, dword [edx + ecx*4]
mov ecx, dword [eax + 0x6fc]
push esi
push 0
push 0
push 0xffffffffffffffff
push 0x31
push 0x1e
call fcn.0043f100
mov ecx, dword [0x451400]
mov edx, dword [ecx*4 + 0x44d0e0]
mov ecx, dword [ebx + 0x7d4]
mov eax, dword [edx*4 + 0x44d0c4]
mov edx, dword [ecx + eax*4]
mov ecx, dword [edx + 0x6fc]
push esi
push 0
push 0
push 0xffffffffffffffff
push 0x31
push 0x96
call fcn.0043f100
mov ecx, dword [0x45116c]
push esi
push 0
push 0
push 0x13
push 0xaf
push 0x17
call fcn.0043f100
cmp dword [0x4513b4], 0
je 0x437021
cmp dword [0x451404], 0x32
jne 0x437021
mov ecx, ebx
mov dword [edi], 0xa
call fcn.00431cd0
mov dword [0x457580], 0
mov ecx, dword [esp + 0xa04]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.004451a2
add esp, 0x9f8
ret 0xc