Function at 0x40227d
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xd78
push esi
push edi
mov al, byte [0xf0d6fc]
mov byte [ebp - 0xc58], al
mov ecx, 0x18
xor eax, eax
lea edi, [ebp - 0xc57]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov cl, byte [0xf0d700]
mov byte [ebp - 0x6c8], cl
xor edx, edx
mov dword [ebp - 0x6c7], edx
mov dword [ebp - 0x6c3], edx
mov dword [ebp - 0x6bf], edx
mov dword [ebp - 0x6bb], edx
mov word [ebp - 0x6b7], dx
mov byte [ebp - 0x6b5], dl
mov al, byte [0xf0d704]
mov byte [ebp - 0x5a0], al
xor ecx, ecx
mov dword [ebp - 0x59f], ecx
mov dword [ebp - 0x59b], ecx
mov dword [ebp - 0x597], ecx
mov dword [ebp - 0x593], ecx
mov word [ebp - 0x58f], cx
mov byte [ebp - 0x58d], cl
mov dl, byte [0xf0d708]
mov byte [ebp - 0xd5c], dl
mov ecx, 0x40
xor eax, eax
lea edi, [ebp - 0xd5b]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov dword [ebp - 0x6b4], 0
mov al, byte [0xf0d70c]
mov byte [ebp - 0x6ac], al
mov ecx, 0x40
xor eax, eax
lea edi, [ebp - 0x6ab]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov dword [ebp - 0x7dc], 0
mov dword [ebp - 0x7e8], 0
mov dword [ebp - 0x580], 0
mov dword [ebp - 0xbf4], 0
mov dword [ebp - 0x58c], 0
mov dword [ebp - 0x804], 0xfffffffe
mov cl, byte [0xf0d710]
mov byte [ebp - 0x7d8], cl
mov ecx, 0x40
xor eax, eax
lea edi, [ebp - 0x7d7]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov dl, byte [0xf0d714]
mov byte [ebp - 0xbf0], dl
mov ecx, 0xf9
xor eax, eax
lea edi, [ebp - 0xbef]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov al, byte [0xf0d718]
mov byte [ebp - 0x578], al
mov ecx, 0xf9
xor eax, eax
lea edi, [ebp - 0x577]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov cl, byte [0xf0d71c]
mov byte [ebp - 0x6d4], cl
xor edx, edx
mov dword [ebp - 0x6d3], edx
mov dword [ebp - 0x6cf], edx
mov byte [ebp - 0x6cb], dl
mov al, byte [0xf0d720]
mov byte [ebp - 0x7fc], al
xor ecx, ecx
mov dword [ebp - 0x7fb], ecx
mov dword [ebp - 0x7f7], ecx
mov byte [ebp - 0x7f3], cl
mov dword [ebp - 0x57c], 0
mov dword [ebp - 0x5a8], 0
mov dword [ebp - 0x588], 0
mov dword [ebp - 0x584], 0
mov dword [ebp - 0x6b0], 0
mov dword [ebp - 0x5a4], 0
mov dword [ebp - 0x808], 0
mov dword [ebp - 0x7e4], 0
mov dword [ebp - 0x7e0], 0
mov dword [ebp - 0x7f0], 0
mov dl, byte [0xf0d724]
mov byte [ebp - 0x190], dl
mov ecx, 0x18
xor eax, eax
lea edi, [ebp - 0x18f]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov al, byte [0xf0d728]
mov byte [ebp - 0x12c], al
mov ecx, 0x4a
xor eax, eax
lea edi, [ebp - 0x12b]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov dword [ebp - 0x588], 0
mov dword [ebp - 0x5a8], 2
mov dword [0xf0d284], 0xdeb
mov ecx, dword [0xf0d284]
shl ecx, 1
mov dword [0xf0d284], ecx
push str.safe
lea edx, [ebp - 0xc58]
push edx
call fcn.00405c00
add esp, 8
push 0x69
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x6c8]
push eax
call fcn.00405c00
add esp, 8
push 0x66
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x6c8]
push ecx
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x6c8]
push edx
call fcn.00405c10
add esp, 8
push 0x65
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x6c8]
push eax
call fcn.00405c10
add esp, 8
push 0x78
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x6c8]
push ecx
call fcn.00405c10
add esp, 8
push 0x69
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x6c8]
push edx
call fcn.00405c10
add esp, 8
push 0x73
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x6c8]
push eax
call fcn.00405c10
add esp, 8
push 0x74
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x6c8]
push ecx
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x6c8]
push edx
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x5a0]
push eax
call fcn.00405c00
add esp, 8
push 0x64
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x5a0]
push ecx
call fcn.00405c10
add esp, 8
push 0x65
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x5a0]
push edx
call fcn.00405c10
add esp, 8
push 0x6c
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x5a0]
push eax
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x5a0]
push ecx
call fcn.00405c10
add esp, 8
push 0x43
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x190]
push edx
call fcn.00405c00
add esp, 8
push 0x72
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x190]
push eax
call fcn.00405c10
add esp, 8
push 0x65
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x190]
push ecx
call fcn.00405c10
add esp, 8
push 0x61
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x190]
push edx
call fcn.00405c10
add esp, 8
push 0x74
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x190]
push eax
call fcn.00405c10
add esp, 8
push 0x65
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x190]
push ecx
call fcn.00405c10
add esp, 8
push 0x64
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x190]
push edx
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x190]
push eax
call fcn.00405c10
add esp, 8
push 0x77
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x190]
push ecx
call fcn.00405c10
add esp, 8
push 0x69
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x190]
push edx
call fcn.00405c10
add esp, 8
push 0x74
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x190]
push eax
call fcn.00405c10
add esp, 8
push 0x68
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x190]
push ecx
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x190]
push edx
call fcn.00405c10
add esp, 8
push 0x55
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x190]
push eax
call fcn.00405c10
add esp, 8
push 0x6e
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x190]
push ecx
call fcn.00405c10
add esp, 8
push 0x6c
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x190]
push edx
call fcn.00405c10
add esp, 8
push 0x69
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x190]
push eax
call fcn.00405c10
add esp, 8
push 0x63
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x190]
push ecx
call fcn.00405c10
add esp, 8
push 0x65
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x190]
push edx
call fcn.00405c10
add esp, 8
push 0x6e
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x190]
push eax
call fcn.00405c10
add esp, 8
push 0x73
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x190]
push ecx
call fcn.00405c10
add esp, 8
push 0x65
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x190]
push edx
call fcn.00405c10
add esp, 8
push 0x64
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x190]
push eax
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x190]
push ecx
call fcn.00405c10
add esp, 8
push 0x43
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x190]
push edx
call fcn.00405c10
add esp, 8
push 0x6f
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x190]
push eax
call fcn.00405c10
add esp, 8
push 0x6d
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x190]
push ecx
call fcn.00405c10
add esp, 8
push 0x70
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x190]
push edx
call fcn.00405c10
add esp, 8
push 0x69
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x190]
push eax
call fcn.00405c10
add esp, 8
push 0x6c
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x190]
push ecx
call fcn.00405c10
add esp, 8
push 0x65
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x190]
push edx
call fcn.00405c10
add esp, 8
push 0x72
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x190]
push eax
call fcn.00405c10
add esp, 8
mov dword [ebp - 0x7e4], 0x8b65
push 0x59
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c00
add esp, 8
push 0x6f
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x75
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x6d
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x61
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x79
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x4e
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x4f
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x54
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x64
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x69
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x73
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x74
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x72
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x69
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x62
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x75
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x74
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x65
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x74
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x68
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x65
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x49
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x6e
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x76
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x69
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x73
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x69
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x62
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x6c
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x65
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x45
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x58
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x45
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x77
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x69
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x74
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x68
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x74
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x68
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x65
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x66
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x72
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x65
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x65
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x76
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x65
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x72
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x73
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x69
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x6f
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x6e
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x6f
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x66
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x74
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x68
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x65
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x63
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x6f
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x6d
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x70
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x69
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x6c
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x65
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x72
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x2e
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0xd
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0xa
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0xd
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0xa
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x52
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x75
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x6e
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x70
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x72
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x6f
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x67
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x72
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x61
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x6d
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x61
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x73
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x6e
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x6f
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x72
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x6d
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x61
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x6c
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x63
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x6f
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x6e
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x73
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x6f
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x6c
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x65
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x77
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x69
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x6e
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x64
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x6f
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x77
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x3f
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0xd
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0xa
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0xd
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0xa
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x4d
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x61
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x6b
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x65
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x73
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x75
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x72
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x65
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x79
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x6f
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x75
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x54
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x52
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x55
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x53
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x54
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x74
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x68
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x65
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x73
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x6f
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x75
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x72
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x63
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x65
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x6f
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x66
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x74
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x68
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x69
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x73
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x66
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x69
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x6c
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x65
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x62
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x65
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x66
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x6f
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x72
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x65
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x70
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x75
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x73
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x68
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x69
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x6e
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x67
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x20
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x59
call fcn.00404e45
add esp, 4
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00405c10
add esp, 8
push 0x45
call fcn.00404e45
add esp, 4
push eax
lea edx, [ebp - 0x12c]
push edx
call fcn.00405c10
add esp, 8
push 0x53
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00405c10
add esp, 8
push 0x40e138
push 0xf06984
push str._s_s
lea ecx, [ebp - 0x7d8]
push ecx
call fcn.00405cf0
add esp, 0x10
push 0x40e144
push 1
call fcn.00404e29
add esp, 4
push eax
call fcn.0040654c
add esp, 8
mov dword [ebp - 0x7ec], eax
cmp dword [ebp - 0x7ec], 0
jne 0x403ce8
push 1
call fcn.00406457
push 2
push 0
mov edx, dword [ebp - 0x7ec]
push edx
call fcn.0040639e
add esp, 0xc
mov eax, dword [ebp - 0x7ec]
push eax
call fcn.00406246
add esp, 4
mov esi, eax
push 0xf0d244
call fcn.004061bb
add esp, 4
sub esi, eax
mov dword [0xf0d254], esi
mov ecx, dword [ebp - 0x7e4]
shl ecx, 2
mov dword [ebp - 0x7e4], ecx
push 2
mov edx, dword [0xf0d254]
neg edx
mov eax, dword [0xf06a88]
lea ecx, [edx + eax - 0xc]
push ecx
mov edx, dword [ebp - 0x7ec]
push edx
call fcn.0040639e
add esp, 0xc
mov eax, dword [ebp - 0x7ec]
push eax
push 0xd
lea ecx, [ebp - 0x6ac]
push ecx
call fcn.00406164
add esp, 0xc
mov edx, dword [ebp - 0x804]
push edx
lea eax, [ebp - 0x6ac]
push eax
call fcn.004049b8
add esp, 8
push eax
call fcn.00404b73
add esp, 4
mov dword [ebp - 0x6b4], eax
push 2
mov ecx, dword [ebp - 0x6b4]
mov edx, dword [0xf0d254]
lea eax, [edx + ecx + 0xc]
imul eax, eax, 0xffffffff
add eax, dword [0xf06a88]
push eax
mov ecx, dword [ebp - 0x7ec]
push ecx
call fcn.0040639e
add esp, 0xc
mov edx, dword [ebp - 0x7ec]
push edx
push 6
lea eax, [ebp - 0x6ac]
push eax
call fcn.00406164
add esp, 0xc
mov ecx, dword [ebp - 0x804]
push ecx
lea edx, [ebp - 0x6ac]
push edx
call fcn.004049b8
add esp, 8
push eax
call fcn.00404b73
add esp, 4
mov dword [0xf06a94], eax
mov eax, dword [ebp - 0x7ec]
push eax
push 6
lea ecx, [ebp - 0x6ac]
push ecx
call fcn.00406164
add esp, 0xc
mov edx, dword [ebp - 0x804]
push edx
lea eax, [ebp - 0x6ac]
push eax
call fcn.004049b8
add esp, 8
push eax
lea ecx, [ebp - 0x6d4]
push ecx
call fcn.00405c00
add esp, 8
mov dword [ebp - 0x7f0], 0
mov dword [ebp - 0x808], 0
push 0xf0d1e4
lea edx, [ebp - 0x6d4]
push edx
call fcn.004060e0
add esp, 8
mov dword [ebp - 0x808], eax
cmp dword [ebp - 0x808], 0
jne 0x403e76
mov dword [ebp - 0x7f0], 1
push 0xf0d20c
lea eax, [ebp - 0x6d4]
push eax
call fcn.004060e0
add esp, 8
mov dword [ebp - 0x808], eax
cmp dword [ebp - 0x808], 0
jne 0x403ea3
mov dword [ebp - 0x7f0], 1
cmp dword [ebp - 0x7f0], 0
jne 0x403ed9
push 4
lea ecx, [ebp - 0x190]
push ecx
lea edx, [ebp - 0x12c]
push edx
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
mov dword [0xf0d288], eax
cmp dword [0xf0d288], 7
jne 0x403ed9
push 1
call fcn.00406457
mov eax, dword [ebp - 0x7e4]
add eax, 0xd5e2
mov dword [ebp - 0x7e4], eax
push 0x40e148
push 0xf0d268
call fcn.00405c00
add esp, 8
mov dword [ebp - 0x808], 0
mov dword [0xf0d234], 0
push 0xf0d72c
push 0xf0d258
call fcn.00405c00
add esp, 8
push 0xf0d730
lea ecx, [ebp - 0x7fc]
push ecx
call fcn.00405c00
add esp, 8
push 0xf0d268
call fcn.00405d50
add esp, 4
mov dword [ebp - 0x57c], eax
mov dword [ebp - 0x7e8], 1
jmp 0x403f64
mov edx, dword [ebp - 0x7e8]
add edx, 1
mov dword [ebp - 0x7e8], edx
mov eax, dword [ebp - 0x57c]
add eax, 1
cmp dword [ebp - 0x7e8], eax
jge 0x403fdb
push 1
mov ecx, dword [ebp - 0x7e8]
push ecx
push 0xf0d268
call fcn.00404f05
add esp, 0xc
push eax
call fcn.00404ea1
add esp, 4
push eax
call fcn.004048a3
add esp, 4
mov dword [ebp - 0x588], eax
mov dl, byte [ebp - 0x588]
push edx
call fcn.00404e45
add esp, 4
push eax
lea eax, [ebp - 0x7fc]
push eax
call fcn.00405c00
add esp, 8
lea ecx, [ebp - 0x7fc]
push ecx
push 0xf0d258
call fcn.00405c10
add esp, 8
jmp 0x403f55
push 0xf0d258
call fcn.00405128
add esp, 4
push eax
push 0xf0d274
call fcn.00405c00
add esp, 8
push 0xf0d274
call fcn.00405d50
add esp, 4
mov dword [ebp - 0x57c], eax
call fcn.0040539c
mov dword [0xf0d234], 0
mov edx, dword [ebp - 0x7e4]
imul edx, edx, 3
mov dword [ebp - 0x7e4], edx
mov eax, dword [ebp - 0x7ec]
push eax
push 2
lea ecx, [ebp - 0x6ac]
push ecx
call fcn.00406164
add esp, 0xc
mov edx, dword [ebp - 0x804]
push edx
lea eax, [ebp - 0x6ac]
push eax
call fcn.004049b8
add esp, 8
push eax
call fcn.00404ea1
add esp, 4
mov dword [0xf06a8c], eax
mov ecx, dword [ebp - 0x7ec]
push ecx
push 2
lea edx, [ebp - 0x6ac]
push edx
call fcn.00406164
add esp, 0xc
mov eax, dword [ebp - 0x804]
push eax
lea ecx, [ebp - 0x6ac]
push ecx
call fcn.004049b8
add esp, 8
push eax
call fcn.00404ea1
add esp, 4
mov dword [0xf06a90], eax
mov dword [ebp - 0x7dc], 0
jmp 0x4040ba
mov edx, dword [ebp - 0x7dc]
add edx, 1
mov dword [ebp - 0x7dc], edx
mov eax, dword [ebp - 0x7dc]
cmp eax, dword [0xf06a94]
jge 0x40488e
push 2
mov ecx, dword [0xf0d254]
add ecx, dword [ebp - 0x6b4]
mov edx, dword [ebp - 0x7dc]
imul edx, edx, 0x18
sub ecx, edx
imul ecx, ecx, 0xffffffff
add ecx, dword [0xf06a88]
push ecx
mov eax, dword [ebp - 0x7ec]
push eax
call fcn.0040639e
add esp, 0xc
mov ecx, dword [ebp - 0x7ec]
push ecx
push 0xd
lea edx, [ebp - 0x6ac]
push edx
call fcn.00406164
add esp, 0xc
mov eax, dword [ebp - 0x804]
push eax
lea ecx, [ebp - 0x6ac]
push ecx
call fcn.004049b8
add esp, 8
push eax
call fcn.00404b73
add esp, 4
mov dword [ebp - 0xbf4], eax
mov edx, dword [ebp - 0x7ec]
push edx
push 0xc
lea eax, [ebp - 0x6ac]
push eax
call fcn.00406164
add esp, 0xc
mov ecx, dword [ebp - 0x804]
push ecx
lea edx, [ebp - 0x6ac]
push edx
call fcn.004049b8
add esp, 8
push eax
call fcn.00404b73
add esp, 4
mov dword [ebp - 0x58c], eax
mov eax, dword [ebp - 0x7ec]
mov ecx, dword [eax + 4]
sub ecx, 1
mov edx, dword [ebp - 0x7ec]
mov dword [edx + 4], ecx
mov eax, dword [ebp - 0x7ec]
cmp dword [eax + 4], 0
jl 0x4041c4
mov ecx, dword [ebp - 0x7ec]
mov edx, dword [ecx]
movsx eax, byte [edx]
and eax, 0xff
mov dword [ebp - 0xd60], eax
mov ecx, dword [ebp - 0x7ec]
mov edx, dword [ecx]
add edx, 1
mov eax, dword [ebp - 0x7ec]
mov dword [eax], edx
jmp 0x4041d9
mov ecx, dword [ebp - 0x7ec]
push ecx
call fcn.00405ffd
add esp, 4
mov dword [ebp - 0xd60], eax
mov edx, dword [ebp - 0xd60]
add edx, dword [ebp - 0x804]
mov dword [ebp - 0x580], edx
cmp dword [ebp - 0x580], 0xff
jle 0x404208
mov eax, dword [ebp - 0x580]
sub eax, 0x100
mov dword [ebp - 0x580], eax
cmp dword [ebp - 0x580], 0
jge 0x404223
mov ecx, dword [ebp - 0x580]
add ecx, 0x100
mov dword [ebp - 0x580], ecx
push 2
mov edx, dword [ebp - 0x6b4]
mov eax, dword [0xf0d254]
lea ecx, [eax + edx + 0xc]
sub ecx, dword [ebp - 0xbf4]
imul ecx, ecx, 0xffffffff
add ecx, dword [0xf06a88]
push ecx
mov edx, dword [ebp - 0x7ec]
push edx
call fcn.0040639e
add esp, 0xc
mov eax, dword [ebp - 0x7ec]
push eax
mov ecx, dword [ebp - 0x580]
add ecx, 1
push ecx
lea edx, [ebp - 0x6ac]
push edx
call fcn.00406164
add esp, 0xc
mov eax, dword [ebp - 0x804]
push eax
lea ecx, [ebp - 0x6ac]
push ecx
call fcn.004049b8
add esp, 8
push eax
lea edx, [ebp - 0xd5c]
push edx
call fcn.00405c00
add esp, 8
lea eax, [ebp - 0x7d8]
push eax
lea ecx, [ebp - 0xbf0]
push ecx
call fcn.00405c00
add esp, 8
lea edx, [ebp - 0xd5c]
push edx
lea eax, [ebp - 0xbf0]
push eax
call fcn.00405c10
add esp, 8
push 0xf0d734
mov ecx, dword [ebp - 0x7dc]
imul ecx, ecx, 0x3e8
add ecx, 0x40ed94
push ecx
call fcn.00405c00
add esp, 8
mov edx, dword [ebp - 0x58c]
sub edx, dword [ebp - 0x580]
test edx, edx
jle 0x404889
mov eax, dword [0xf06a94]
sub eax, 2
cmp dword [ebp - 0x7dc], eax
jge 0x4044b5
lea ecx, [ebp - 0xbf0]
push ecx
call fcn.00405bd6
add esp, 4
mov dword [ebp - 0x7e0], eax
lea edx, [ebp - 0xbf0]
push edx
mov eax, dword [ebp - 0x7dc]
imul eax, eax, 0x3e8
add eax, 0x40ed94
push eax
call fcn.00405c00
add esp, 8
push 0x40e154
lea ecx, [ebp - 0xbf0]
push ecx
call fcn.0040654c
add esp, 8
mov dword [ebp - 0x800], eax
cmp dword [ebp - 0x800], 0
je 0x4044b5
mov dword [0xf0d234], 0
mov dword [ebp - 0x7e8], 1
jmp 0x40438f
mov edx, dword [ebp - 0x7e8]
add edx, 1
mov dword [ebp - 0x7e8], edx
mov eax, dword [ebp - 0x58c]
sub eax, dword [ebp - 0x580]
add eax, 1
cmp dword [ebp - 0x7e8], eax
jge 0x4044a6
mov ecx, dword [ebp - 0x7ec]
mov edx, dword [ecx + 4]
sub edx, 1
mov eax, dword [ebp - 0x7ec]
mov dword [eax + 4], edx
mov ecx, dword [ebp - 0x7ec]
cmp dword [ecx + 4], 0
jl 0x4043f7
mov edx, dword [ebp - 0x7ec]
mov eax, dword [edx]
movsx ecx, byte [eax]
and ecx, 0xff
mov dword [ebp - 0xd64], ecx
mov edx, dword [ebp - 0x7ec]
mov eax, dword [edx]
add eax, 1
mov ecx, dword [ebp - 0x7ec]
mov dword [ecx], eax
jmp 0x40440c
mov edx, dword [ebp - 0x7ec]
push edx
call fcn.00405ffd
add esp, 4
mov dword [ebp - 0xd64], eax
mov eax, dword [ebp - 0xd64]
mov dword [ebp - 0x588], eax
mov ecx, dword [ebp - 0x588]
push ecx
call fcn.004048a3
add esp, 4
mov dword [ebp - 0x588], eax
mov edx, dword [ebp - 0x800]
mov eax, dword [edx + 4]
sub eax, 1
mov ecx, dword [ebp - 0x800]
mov dword [ecx + 4], eax
mov edx, dword [ebp - 0x800]
cmp dword [edx + 4], 0
jl 0x404485
mov eax, dword [ebp - 0x800]
mov ecx, dword [eax]
mov dl, byte [ebp - 0x588]
mov byte [ecx], dl
movsx eax, byte [ebp - 0x588]
and eax, 0xff
mov dword [ebp - 0xd68], eax
mov ecx, dword [ebp - 0x800]
mov edx, dword [ecx]
add edx, 1
mov eax, dword [ebp - 0x800]
mov dword [eax], edx
jmp 0x4044a1
mov ecx, dword [ebp - 0x800]
push ecx
mov edx, dword [ebp - 0x588]
push edx
call fcn.00405ee8
add esp, 8
mov dword [ebp - 0xd68], eax
jmp 0x404380
mov eax, dword [ebp - 0x800]
push eax
call fcn.00405e92
add esp, 4
mov ecx, dword [0xf06a94]
sub ecx, 2
cmp dword [ebp - 0x7dc], ecx
jne 0x4046b7
push 0xf091a8
lea edx, [ebp - 0xbf0]
push edx
call fcn.00405c00
add esp, 8
lea eax, [ebp - 0xbf0]
push eax
call fcn.00405bd6
add esp, 4
mov dword [ebp - 0x7e0], eax
lea ecx, [ebp - 0xbf0]
push ecx
mov edx, dword [ebp - 0x7dc]
imul edx, edx, 0x3e8
add edx, 0x40ed94
push edx
call fcn.00405c00
add esp, 8
push 0x40e158
lea eax, [ebp - 0xbf0]
push eax
call fcn.0040654c
add esp, 8
mov dword [ebp - 0x800], eax
cmp dword [ebp - 0x800], 0
je 0x4046b7
push 0xf0ce4c
push 0xf093b0
call fcn.00405c10
add esp, 8
mov ecx, dword [ebp - 0x800]
push ecx
push 0xf093b0
call fcn.00405e4f
add esp, 8
mov dword [0xf0d234], 0
mov dword [ebp - 0x7e8], 1
jmp 0x404587
mov edx, dword [ebp - 0x7e8]
add edx, 1
mov dword [ebp - 0x7e8], edx
mov eax, dword [ebp - 0x58c]
sub eax, dword [ebp - 0x580]
add eax, 1
cmp dword [ebp - 0x7e8], eax
jge 0x4046a8
mov ecx, dword [ebp - 0x7ec]
mov edx, dword [ecx + 4]
sub edx, 1
mov eax, dword [ebp - 0x7ec]
mov dword [eax + 4], edx
mov ecx, dword [ebp - 0x7ec]
cmp dword [ecx + 4], 0
jl 0x4045ef
mov edx, dword [ebp - 0x7ec]
mov eax, dword [edx]
movsx ecx, byte [eax]
and ecx, 0xff
mov dword [ebp - 0xd6c], ecx
mov edx, dword [ebp - 0x7ec]
mov eax, dword [edx]
add eax, 1
mov ecx, dword [ebp - 0x7ec]
mov dword [ecx], eax
jmp 0x404604
mov edx, dword [ebp - 0x7ec]
push edx
call fcn.00405ffd
add esp, 4
mov dword [ebp - 0xd6c], eax
mov eax, dword [ebp - 0xd6c]
mov dword [ebp - 0x588], eax
mov ecx, dword [ebp - 0x588]
push ecx
call fcn.004048a3
add esp, 4
mov dword [ebp - 0x588], eax
mov dword [ebp - 0x7e4], 7
mov edx, dword [ebp - 0x800]
mov eax, dword [edx + 4]
sub eax, 1
mov ecx, dword [ebp - 0x800]
mov dword [ecx + 4], eax
mov edx, dword [ebp - 0x800]
cmp dword [edx + 4], 0
jl 0x404687
mov eax, dword [ebp - 0x800]
mov ecx, dword [eax]
mov dl, byte [ebp - 0x588]
mov byte [ecx], dl
movsx eax, byte [ebp - 0x588]
and eax, 0xff
mov dword [ebp - 0xd70], eax
mov ecx, dword [ebp - 0x800]
mov edx, dword [ecx]
add edx, 1
mov eax, dword [ebp - 0x800]
mov dword [eax], edx
jmp 0x4046a3
mov ecx, dword [ebp - 0x800]
push ecx
mov edx, dword [ebp - 0x588]
push edx
call fcn.00405ee8
add esp, 8
mov dword [ebp - 0xd70], eax
jmp 0x404578
mov eax, dword [ebp - 0x800]
push eax
call fcn.00405e92
add esp, 4
mov ecx, dword [0xf06a94]
sub ecx, 1
cmp dword [ebp - 0x7dc], ecx
jne 0x404889
push 0xf092ac
lea edx, [ebp - 0xbf0]
push edx
call fcn.00405c00
add esp, 8
lea eax, [ebp - 0xbf0]
push eax
call fcn.00405bd6
add esp, 4
mov dword [ebp - 0x7e0], eax
lea ecx, [ebp - 0xbf0]
push ecx
mov edx, dword [ebp - 0x7dc]
imul edx, edx, 0x3e8
add edx, 0x40ed94
push edx
call fcn.00405c00
add esp, 8
push 0x40e15c
lea eax, [ebp - 0xbf0]
push eax
call fcn.0040654c
add esp, 8
mov dword [ebp - 0x800], eax
cmp dword [ebp - 0x800], 0
je 0x404889
mov dword [0xf0d234], 0
mov dword [ebp - 0x7e8], 1
jmp 0x404763
mov ecx, dword [ebp - 0x7e8]
add ecx, 1
mov dword [ebp - 0x7e8], ecx
mov edx, dword [ebp - 0x58c]
sub edx, dword [ebp - 0x580]
add edx, 1
cmp dword [ebp - 0x7e8], edx
jge 0x40487a
mov eax, dword [ebp - 0x7ec]
mov ecx, dword [eax + 4]
sub ecx, 1
mov edx, dword [ebp - 0x7ec]
mov dword [edx + 4], ecx
mov eax, dword [ebp - 0x7ec]
cmp dword [eax + 4], 0
jl 0x4047ca
mov ecx, dword [ebp - 0x7ec]
mov edx, dword [ecx]
movsx eax, byte [edx]
and eax, 0xff
mov dword [ebp - 0xd74], eax
mov ecx, dword [ebp - 0x7ec]
mov edx, dword [ecx]
add edx, 1
mov eax, dword [ebp - 0x7ec]
mov dword [eax], edx
jmp 0x4047df
mov ecx, dword [ebp - 0x7ec]
push ecx
call fcn.00405ffd
add esp, 4
mov dword [ebp - 0xd74], eax
mov edx, dword [ebp - 0xd74]
mov dword [ebp - 0x588], edx
mov eax, dword [ebp - 0x588]
push eax
call fcn.004048a3
add esp, 4
mov dword [ebp - 0x588], eax
mov ecx, dword [ebp - 0x800]
mov edx, dword [ecx + 4]
sub edx, 1
mov eax, dword [ebp - 0x800]
mov dword [eax + 4], edx
mov ecx, dword [ebp - 0x800]
cmp dword [ecx + 4], 0
jl 0x404859
mov edx, dword [ebp - 0x800]
mov eax, dword [edx]
mov cl, byte [ebp - 0x588]
mov byte [eax], cl
movsx edx, byte [ebp - 0x588]
and edx, 0xff
mov dword [ebp - 0xd78], edx
mov eax, dword [ebp - 0x800]
mov ecx, dword [eax]
add ecx, 1
mov edx, dword [ebp - 0x800]
mov dword [edx], ecx
jmp 0x404875
mov eax, dword [ebp - 0x800]
push eax
mov ecx, dword [ebp - 0x588]
push ecx
call fcn.00405ee8
add esp, 8
mov dword [ebp - 0xd78], eax
jmp 0x404754
mov edx, dword [ebp - 0x800]
push edx
call fcn.00405e92
add esp, 4
jmp 0x4040ab
mov eax, dword [ebp - 0x7ec]
push eax
call fcn.00405e92
add esp, 4
pop edi
pop esi
mov esp, ebp
pop ebp
ret