Function at 0x4f1090
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x563c6e
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x3d0
push esi
lea ecx, [ebp - 0xad]
call fcn.00402260
mov dword [ebp - 0x29c], eax
mov eax, dword [ebp - 0x29c]
mov dword [ebp - 0x2a0], eax
mov dword [ebp - 4], 0
mov ecx, dword [ebp - 0x2a0]
push ecx
push 0x580e5c
lea ecx, [ebp - 0xac]
call fcn.00403050
mov byte [ebp - 4], 1
lea edx, [ebp - 0xac]
push edx
lea eax, [ebp - 0x20]
push eax
mov ecx, dword [ebp + 8]
call fcn.00445620
mov byte [ebp - 4], 4
lea ecx, [ebp - 0xac]
call fcn.004021f0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0xad]
call fcn.00402270
lea ecx, [ebp - 0x20]
call fcn.00446c40
mov dword [ebp - 0x24], eax
lea ecx, [ebp - 0xbd]
call fcn.00402260
mov dword [ebp - 0x2a4], eax
mov ecx, dword [ebp - 0x2a4]
mov dword [ebp - 0x2a8], ecx
mov byte [ebp - 4], 5
mov edx, dword [ebp - 0x2a8]
push edx
push 0x580e50
lea ecx, [ebp - 0xbc]
call fcn.00403050
mov byte [ebp - 4], 6
push 0xfffffc19
lea eax, [ebp - 0xbc]
push eax
mov ecx, dword [ebp + 8]
call fcn.00445540
mov ecx, dword [ebp + 0xc]
mov dword [ecx + 0xc], eax
mov byte [ebp - 4], 5
lea ecx, [ebp - 0xbc]
call fcn.004021f0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0xbd]
call fcn.00402270
mov edx, dword [0x5ccbd8]
mov eax, dword [edx]
mov ecx, dword [0x5ccbd8]
call dword [eax + 0x1c]
push eax
lea ecx, [ebp - 0xcc]
push ecx
call fcn.0044c7a0
add esp, 8
mov dword [ebp - 0x2ac], eax
mov edx, dword [ebp - 0x2ac]
mov dword [ebp - 0x2b0], edx
mov byte [ebp - 4], 7
mov eax, dword [0x5ccbd8]
mov edx, dword [eax]
mov ecx, dword [0x5ccbd8]
call dword [edx + 0x18]
push eax
lea eax, [ebp - 0xd8]
push eax
call fcn.0044c7a0
add esp, 8
mov dword [ebp - 0x2b4], eax
mov ecx, dword [ebp - 0x2b4]
mov dword [ebp - 0x2b8], ecx
mov byte [ebp - 4], 8
mov edx, dword [ebp - 0x2b8]
push edx
push 0x580e48
lea eax, [ebp - 0xe4]
push eax
call fcn.0043d580
add esp, 0xc
mov dword [ebp - 0x2bc], eax
mov ecx, dword [ebp - 0x2bc]
mov dword [ebp - 0x2c0], ecx
mov byte [ebp - 4], 9
push 0x5784e8
mov edx, dword [ebp - 0x2c0]
push edx
lea eax, [ebp - 0xf0]
push eax
call fcn.00409790
add esp, 0xc
mov dword [ebp - 0x2c4], eax
mov ecx, dword [ebp - 0x2c4]
mov dword [ebp - 0x2c8], ecx
mov byte [ebp - 4], 0xa
mov edx, dword [ebp - 0x2b0]
push edx
mov eax, dword [ebp - 0x2c8]
push eax
lea ecx, [ebp - 0x18]
push ecx
call fcn.00427620
add esp, 0xc
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0xf0]
call fcn.004021f0
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0xe4]
call fcn.004021f0
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0xd8]
call fcn.004021f0
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0xcc]
call fcn.004021f0
lea ecx, [ebp - 0xfd]
call fcn.00402260
mov dword [ebp - 0x2cc], eax
mov edx, dword [ebp - 0x2cc]
mov dword [ebp - 0x2d0], edx
mov byte [ebp - 4], 0x10
mov eax, dword [ebp - 0x2d0]
push eax
push 0x580e3c
lea ecx, [ebp - 0xfc]
call fcn.00403050
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x18]
push ecx
lea edx, [ebp - 0xfc]
push edx
lea eax, [ebp - 0x10c]
push eax
mov ecx, dword [ebp + 8]
call fcn.004452c0
mov dword [ebp - 0x2d4], eax
mov ecx, dword [ebp - 0x2d4]
mov dword [ebp - 0x2d8], ecx
mov byte [ebp - 4], 0x12
mov edx, dword [ebp - 0x2d8]
push edx
lea eax, [ebp - 0x11c]
push eax
call fcn.0044d710
add esp, 8
mov ecx, dword [ebp + 0xc]
add ecx, 0x10
mov edx, dword [eax]
mov dword [ecx], edx
mov edx, dword [eax + 4]
mov dword [ecx + 4], edx
mov edx, dword [eax + 8]
mov dword [ecx + 8], edx
mov eax, dword [eax + 0xc]
mov dword [ecx + 0xc], eax
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x10c]
call fcn.004021f0
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0xfc]
call fcn.004021f0
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0xfd]
call fcn.00402270
mov ecx, dword [ebp + 0xc]
call fcn.004f2230
mov dword [ebp - 0x28], 0
jmp 0x4f13a8
mov ecx, dword [ebp - 0x28]
add ecx, 1
mov dword [ebp - 0x28], ecx
mov edx, dword [ebp - 0x28]
cmp edx, dword [ebp - 0x24]
jge 0x4f2029
lea ecx, [ebp - 0x40]
call fcn.004f2060
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x131]
call fcn.00402260
mov dword [ebp - 0x2dc], eax
mov eax, dword [ebp - 0x2dc]
mov dword [ebp - 0x2e0], eax
mov byte [ebp - 4], 0x14
mov ecx, dword [ebp - 0x2e0]
push ecx
push 0x580e34
lea ecx, [ebp - 0x130]
call fcn.00403050
mov byte [ebp - 4], 0x15
mov edx, dword [ebp - 0x28]
push edx
lea eax, [ebp - 0x124]
push eax
lea ecx, [ebp - 0x20]
call fcn.00446be0
mov dword [ebp - 0x2e4], eax
mov ecx, dword [ebp - 0x2e4]
mov dword [ebp - 0x2e8], ecx
mov byte [ebp - 4], 0x16
lea edx, [ebp - 0x130]
push edx
lea eax, [ebp - 0x48]
push eax
mov ecx, dword [ebp - 0x2e8]
call fcn.00445620
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x124]
call fcn.00401e50
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x130]
call fcn.004021f0
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x131]
call fcn.00402270
lea ecx, [ebp - 0x149]
call fcn.00402260
mov dword [ebp - 0x2ec], eax
mov ecx, dword [ebp - 0x2ec]
mov dword [ebp - 0x2f0], ecx
mov byte [ebp - 4], 0x1b
mov edx, dword [ebp - 0x2f0]
push edx
push 0x57a378
lea ecx, [ebp - 0x148]
call fcn.00403050
mov byte [ebp - 4], 0x1c
mov eax, dword [ebp - 0x28]
push eax
lea ecx, [ebp - 0x13c]
push ecx
lea ecx, [ebp - 0x20]
call fcn.00446be0
mov dword [ebp - 0x2f4], eax
mov edx, dword [ebp - 0x2f4]
mov dword [ebp - 0x2f8], edx
mov byte [ebp - 4], 0x1d
push 0
lea eax, [ebp - 0x148]
push eax
mov ecx, dword [ebp - 0x2f8]
call fcn.004455f0
fstp dword [ebp - 0x2c]
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x13c]
call fcn.00401e50
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x148]
call fcn.004021f0
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x149]
call fcn.00402270
lea ecx, [ebp - 0x161]
call fcn.00402260
mov dword [ebp - 0x2fc], eax
mov ecx, dword [ebp - 0x2fc]
mov dword [ebp - 0x300], ecx
mov byte [ebp - 4], 0x1e
mov edx, dword [ebp - 0x300]
push edx
push 0x580e28
lea ecx, [ebp - 0x160]
call fcn.00403050
mov byte [ebp - 4], 0x1f
mov eax, dword [ebp - 0x28]
push eax
lea ecx, [ebp - 0x154]
push ecx
lea ecx, [ebp - 0x20]
call fcn.00446be0
mov dword [ebp - 0x304], eax
mov edx, dword [ebp - 0x304]
mov dword [ebp - 0x308], edx
mov byte [ebp - 4], 0x20
push 0
lea eax, [ebp - 0x160]
push eax
mov ecx, dword [ebp - 0x308]
call fcn.00445570
mov byte [ebp - 0x30], al
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x154]
call fcn.00401e50
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0x160]
call fcn.004021f0
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x161]
call fcn.00402270
lea ecx, [ebp - 0x179]
call fcn.00402260
mov dword [ebp - 0x30c], eax
mov ecx, dword [ebp - 0x30c]
mov dword [ebp - 0x310], ecx
mov byte [ebp - 4], 0x21
mov edx, dword [ebp - 0x310]
push edx
push 0x580e14
lea ecx, [ebp - 0x178]
call fcn.00403050
mov byte [ebp - 4], 0x22
mov eax, dword [ebp - 0x28]
push eax
lea ecx, [ebp - 0x16c]
push ecx
lea ecx, [ebp - 0x20]
call fcn.00446be0
mov dword [ebp - 0x314], eax
mov edx, dword [ebp - 0x314]
mov dword [ebp - 0x318], edx
mov byte [ebp - 4], 0x23
push 1
lea eax, [ebp - 0x178]
push eax
mov ecx, dword [ebp - 0x318]
call fcn.00445570
movzx ecx, al
neg ecx
sbb ecx, ecx
add ecx, 1
mov dword [ebp - 0x34], ecx
mov byte [ebp - 4], 0x22
lea ecx, [ebp - 0x16c]
call fcn.00401e50
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0x178]
call fcn.004021f0
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x179]
call fcn.00402270
mov dword [ebp - 0x4c], 0
jmp 0x4f167f
mov edx, dword [ebp - 0x4c]
add edx, 1
mov dword [ebp - 0x4c], edx
lea ecx, [ebp - 0x48]
call fcn.00446c40
cmp dword [ebp - 0x4c], eax
jge 0x4f2000
mov eax, dword [ebp - 0x4c]
push eax
lea ecx, [ebp - 0x64]
push ecx
lea ecx, [ebp - 0x48]
call fcn.00446be0
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x189]
call fcn.00402260
mov dword [ebp - 0x31c], eax
mov edx, dword [ebp - 0x31c]
mov dword [ebp - 0x320], edx
mov byte [ebp - 4], 0x25
mov eax, dword [ebp - 0x320]
push eax
push 0x580e08
lea ecx, [ebp - 0x188]
call fcn.00403050
mov byte [ebp - 4], 0x26
push 0
lea ecx, [ebp - 0x188]
push ecx
lea ecx, [ebp - 0x64]
call fcn.00445540
mov dword [ebp - 0xa0], eax
mov byte [ebp - 4], 0x25
lea ecx, [ebp - 0x188]
call fcn.004021f0
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x189]
call fcn.00402270
lea ecx, [ebp - 0x199]
call fcn.00402260
mov dword [ebp - 0x324], eax
mov edx, dword [ebp - 0x324]
mov dword [ebp - 0x328], edx
mov byte [ebp - 4], 0x27
mov eax, dword [ebp - 0x328]
push eax
push 0x578f14
lea ecx, [ebp - 0x198]
call fcn.00403050
mov byte [ebp - 4], 0x28
push 0
lea ecx, [ebp - 0x198]
push ecx
lea ecx, [ebp - 0x64]
call fcn.00445540
mov dword [ebp - 0x9c], eax
mov byte [ebp - 4], 0x27
lea ecx, [ebp - 0x198]
call fcn.004021f0
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x199]
call fcn.00402270
lea ecx, [ebp - 0x1a9]
call fcn.00402260
mov dword [ebp - 0x32c], eax
mov edx, dword [ebp - 0x32c]
mov dword [ebp - 0x330], edx
mov byte [ebp - 4], 0x29
mov eax, dword [ebp - 0x330]
push eax
push 0x580df8
lea ecx, [ebp - 0x1a8]
call fcn.00403050
mov byte [ebp - 4], 0x2a
push 0
lea ecx, [ebp - 0x1a8]
push ecx
lea ecx, [ebp - 0x64]
call fcn.00445540
mov dword [ebp - 0x90], eax
mov byte [ebp - 4], 0x29
lea ecx, [ebp - 0x1a8]
call fcn.004021f0
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x1a9]
call fcn.00402270
lea ecx, [ebp - 0x1b9]
call fcn.00402260
mov dword [ebp - 0x334], eax
mov edx, dword [ebp - 0x334]
mov dword [ebp - 0x338], edx
mov byte [ebp - 4], 0x2b
mov eax, dword [ebp - 0x338]
push eax
push 0x57ae00
lea ecx, [ebp - 0x1b8]
call fcn.00403050
mov byte [ebp - 4], 0x2c
push 0
lea ecx, [ebp - 0x1b8]
push ecx
lea ecx, [ebp - 0x64]
call fcn.00445540
mov dword [ebp - 0x98], eax
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x1b8]
call fcn.004021f0
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x1b9]
call fcn.00402270
lea ecx, [ebp - 0x1c9]
call fcn.00402260
mov dword [ebp - 0x33c], eax
mov edx, dword [ebp - 0x33c]
mov dword [ebp - 0x340], edx
mov byte [ebp - 4], 0x2d
mov eax, dword [ebp - 0x340]
push eax
push 0x57ec84
lea ecx, [ebp - 0x1c8]
call fcn.00403050
mov byte [ebp - 4], 0x2e
push 0
lea ecx, [ebp - 0x1c8]
push ecx
lea ecx, [ebp - 0x64]
call fcn.00445540
mov dword [ebp - 0x94], eax
mov byte [ebp - 4], 0x2d
lea ecx, [ebp - 0x1c8]
call fcn.004021f0
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x1c9]
call fcn.00402270
lea ecx, [ebp - 0x1d9]
call fcn.00402260
mov dword [ebp - 0x344], eax
mov edx, dword [ebp - 0x344]
mov dword [ebp - 0x348], edx
mov byte [ebp - 4], 0x2f
mov eax, dword [ebp - 0x348]
push eax
push 0x580df0
lea ecx, [ebp - 0x1d8]
call fcn.00403050
mov byte [ebp - 4], 0x30
push 0x270f
lea ecx, [ebp - 0x1d8]
push ecx
lea ecx, [ebp - 0x64]
call fcn.00445540
mov dword [ebp - 0x8c], eax
mov byte [ebp - 4], 0x2f
lea ecx, [ebp - 0x1d8]
call fcn.004021f0
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x1d9]
call fcn.00402270
lea ecx, [ebp - 0x1e9]
call fcn.00402260
mov dword [ebp - 0x34c], eax
mov edx, dword [ebp - 0x34c]
mov dword [ebp - 0x350], edx
mov byte [ebp - 4], 0x31
mov eax, dword [ebp - 0x350]
push eax
push 0x5796e0
lea ecx, [ebp - 0x1e8]
call fcn.00403050
mov byte [ebp - 4], 0x32
push 0xc479c000
lea ecx, [ebp - 0x1e8]
push ecx
lea ecx, [ebp - 0x64]
call fcn.004455f0
fstp dword [ebp - 0x7c]
mov byte [ebp - 4], 0x31
lea ecx, [ebp - 0x1e8]
call fcn.004021f0
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x1e9]
call fcn.00402270
lea ecx, [ebp - 0x1f9]
call fcn.00402260
mov dword [ebp - 0x354], eax
mov edx, dword [ebp - 0x354]
mov dword [ebp - 0x358], edx
mov byte [ebp - 4], 0x33
mov eax, dword [ebp - 0x358]
push eax
push 0x57b74c
lea ecx, [ebp - 0x1f8]
call fcn.00403050
mov byte [ebp - 4], 0x34
push 0
lea ecx, [ebp - 0x1f8]
push ecx
lea ecx, [ebp - 0x64]
call fcn.00445540
mov dword [ebp - 0x35c], eax
fild dword [ebp - 0x35c]
fstp dword [ebp - 0x78]
mov byte [ebp - 4], 0x33
lea ecx, [ebp - 0x1f8]
call fcn.004021f0
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x1f9]
call fcn.00402270
lea ecx, [ebp - 0x209]
call fcn.00402260
mov dword [ebp - 0x360], eax
mov edx, dword [ebp - 0x360]
mov dword [ebp - 0x364], edx
mov byte [ebp - 4], 0x35
mov eax, dword [ebp - 0x364]
push eax
push 0x578f04
lea ecx, [ebp - 0x208]
call fcn.00403050
mov byte [ebp - 4], 0x36
push 0xc479c000
lea ecx, [ebp - 0x208]
push ecx
lea ecx, [ebp - 0x64]
call fcn.004455f0
fnstcw word [ebp - 0x366]
movzx eax, word [ebp - 0x366]
or ah, 0xc
mov dword [ebp - 0x36c], eax
fldcw word [ebp - 0x36c]
fistp dword [ebp - 0x88]
fldcw word [ebp - 0x366]
mov byte [ebp - 4], 0x35
lea ecx, [ebp - 0x208]
call fcn.004021f0
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x209]
call fcn.00402270
lea ecx, [ebp - 0x219]
call fcn.00402260
mov dword [ebp - 0x370], eax
mov edx, dword [ebp - 0x370]
mov dword [ebp - 0x374], edx
mov byte [ebp - 4], 0x37
mov eax, dword [ebp - 0x374]
push eax
push 0x578f0c
lea ecx, [ebp - 0x218]
call fcn.00403050
mov byte [ebp - 4], 0x38
push 0xc479c000
lea ecx, [ebp - 0x218]
push ecx
lea ecx, [ebp - 0x64]
call fcn.004455f0
fnstcw word [ebp - 0x376]
movzx eax, word [ebp - 0x376]
or ah, 0xc
mov dword [ebp - 0x37c], eax
fldcw word [ebp - 0x37c]
fistp dword [ebp - 0x84]
fldcw word [ebp - 0x376]
mov byte [ebp - 4], 0x37
lea ecx, [ebp - 0x218]
call fcn.004021f0
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x219]
call fcn.00402270
lea ecx, [ebp - 0x229]
call fcn.00402260
mov dword [ebp - 0x380], eax
mov edx, dword [ebp - 0x380]
mov dword [ebp - 0x384], edx
mov byte [ebp - 4], 0x39
mov eax, dword [ebp - 0x384]
push eax
push 0x580de8
lea ecx, [ebp - 0x228]
call fcn.00403050
mov byte [ebp - 4], 0x3a
push 0
lea ecx, [ebp - 0x228]
push ecx
lea ecx, [ebp - 0x64]
call fcn.00445570
mov byte [ebp - 0x80], al
mov byte [ebp - 4], 0x39
lea ecx, [ebp - 0x228]
call fcn.004021f0
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x229]
call fcn.00402270
lea ecx, [ebp - 0x239]
call fcn.00402260
mov dword [ebp - 0x388], eax
mov edx, dword [ebp - 0x388]
mov dword [ebp - 0x38c], edx
mov byte [ebp - 4], 0x3b
mov eax, dword [ebp - 0x38c]
push eax
push 0x580de0
lea ecx, [ebp - 0x238]
call fcn.00403050
mov byte [ebp - 4], 0x3c
push 0
lea ecx, [ebp - 0x238]
push ecx
lea ecx, [ebp - 0x64]
call fcn.00445570
mov byte [ebp - 0x7f], al
mov byte [ebp - 4], 0x3b
lea ecx, [ebp - 0x238]
call fcn.004021f0
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x239]
call fcn.00402270
lea ecx, [ebp - 0x249]
call fcn.00402260
mov dword [ebp - 0x390], eax
mov edx, dword [ebp - 0x390]
mov dword [ebp - 0x394], edx
mov byte [ebp - 4], 0x3d
mov eax, dword [ebp - 0x394]
push eax
push 0x578b72
lea ecx, [ebp - 0x248]
call fcn.00403050
mov byte [ebp - 4], 0x3e
lea ecx, [ebp - 0x259]
call fcn.00402260
mov dword [ebp - 0x398], eax
mov ecx, dword [ebp - 0x398]
mov dword [ebp - 0x39c], ecx
mov byte [ebp - 4], 0x3f
mov edx, dword [ebp - 0x39c]
push edx
push 0x579518
lea ecx, [ebp - 0x258]
call fcn.00403050
mov byte [ebp - 4], 0x40
lea eax, [ebp - 0x248]
push eax
lea ecx, [ebp - 0x258]
push ecx
lea edx, [ebp - 0x58]
push edx
lea ecx, [ebp - 0x64]
call fcn.004452c0
mov byte [ebp - 4], 0x45
lea ecx, [ebp - 0x258]
call fcn.004021f0
mov byte [ebp - 4], 0x44
lea ecx, [ebp - 0x259]
call fcn.00402270
mov byte [ebp - 4], 0x43
lea ecx, [ebp - 0x248]
call fcn.004021f0
mov byte [ebp - 4], 0x42
lea ecx, [ebp - 0x249]
call fcn.00402270
push 0x578b72
lea eax, [ebp - 0x58]
push eax
call fcn.0040f330
add esp, 8
movzx ecx, al
test ecx, ecx
je 0x4f1d2f
mov dword [ebp - 0x74], 0xfffffc19
jmp 0x4f1d7e
lea edx, [ebp - 0x58]
push edx
push 0x57abb0
lea eax, [ebp - 0x268]
push eax
call fcn.0043d580
add esp, 0xc
mov dword [ebp - 0x3a0], eax
mov ecx, dword [ebp - 0x3a0]
mov dword [ebp - 0x3a4], ecx
mov byte [ebp - 4], 0x46
mov edx, dword [ebp - 0x3a4]
push edx
call fcn.0044c630
add esp, 4
mov dword [ebp - 0x74], eax
mov byte [ebp - 4], 0x42
lea ecx, [ebp - 0x268]
call fcn.004021f0
lea ecx, [ebp - 0x275]
call fcn.00402260
mov dword [ebp - 0x3a8], eax
mov eax, dword [ebp - 0x3a8]
mov dword [ebp - 0x3ac], eax
mov byte [ebp - 4], 0x47
mov ecx, dword [ebp - 0x3ac]
push ecx
push 0x580dd4
lea ecx, [ebp - 0x274]
call fcn.00403050
mov byte [ebp - 4], 0x48
push 0xff
lea edx, [ebp - 0x274]
push edx
lea ecx, [ebp - 0x64]
call fcn.00445540
mov dword [ebp - 0x3b0], eax
fild dword [ebp - 0x3b0]
fstp dword [ebp - 0x70]
mov byte [ebp - 4], 0x47
lea ecx, [ebp - 0x274]
call fcn.004021f0
mov byte [ebp - 4], 0x42
lea ecx, [ebp - 0x275]
call fcn.00402270
lea ecx, [ebp - 0x285]
call fcn.00402260
mov dword [ebp - 0x3b4], eax
mov eax, dword [ebp - 0x3b4]
mov dword [ebp - 0x3b8], eax
mov byte [ebp - 4], 0x49
mov ecx, dword [ebp - 0x3b8]
push ecx
push 0x580dc8
lea ecx, [ebp - 0x284]
call fcn.00403050
mov byte [ebp - 4], 0x4a
push 0xff
lea edx, [ebp - 0x284]
push edx
lea ecx, [ebp - 0x64]
call fcn.00445540
mov dword [ebp - 0x3bc], eax
fild dword [ebp - 0x3bc]
fstp dword [ebp - 0x6c]
mov byte [ebp - 4], 0x49
lea ecx, [ebp - 0x284]
call fcn.004021f0
mov byte [ebp - 4], 0x42
lea ecx, [ebp - 0x285]
call fcn.00402270
lea ecx, [ebp - 0x295]
call fcn.00402260
mov dword [ebp - 0x3c0], eax
mov eax, dword [ebp - 0x3c0]
mov dword [ebp - 0x3c4], eax
mov byte [ebp - 4], 0x4b
mov ecx, dword [ebp - 0x3c4]
push ecx
push 0x580dbc
lea ecx, [ebp - 0x294]
call fcn.00403050
mov byte [ebp - 4], 0x4c
push 0
lea edx, [ebp - 0x294]
push edx
lea ecx, [ebp - 0x64]
call fcn.00445540
mov dword [ebp - 0x3c8], eax
fild dword [ebp - 0x3c8]
fstp dword [ebp - 0x68]
mov byte [ebp - 4], 0x4b
lea ecx, [ebp - 0x294]
call fcn.004021f0
mov byte [ebp - 4], 0x42
lea ecx, [ebp - 0x295]
call fcn.00402270
mov byte [ebp - 0x59], 1
fld dword [0x578440]
fld dword [ebp - 0x2c]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x4f1fbf
fild dword [0x5ce4f0]
fstp dword [ebp - 0x3cc]
mov eax, dword [0x5ccbd8]
mov edx, dword [eax]
mov ecx, dword [0x5ccbd8]
call dword [edx + 0x1c]
add eax, 0x64
mov dword [ebp - 0x3d0], eax
fild dword [ebp - 0x3d0]
fdiv dword [ebp - 0x2c]
fsubr dword [ebp - 0x3cc]
fld dword [0x578440]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x4f1f5a
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x3d4], eax
jmp 0x4f1f64
mov dword [ebp - 0x3d4], 0x3f800000
mov esi, dword [ebp - 0x8c]
sub esi, 1
mov ecx, dword [0x5ccbd8]
mov edx, dword [ecx]
mov ecx, dword [0x5ccbd8]
call dword [edx + 0x1c]
imul esi, eax
add esi, dword [ebp - 0x90]
mov dword [ebp - 0x3d8], esi
fild dword [ebp - 0x3d8]
fcomp dword [ebp - 0x3d4]
fnstsw ax
test ah, 1
jne 0x4f1fac
mov dword [ebp - 0x3dc], 1
jmp 0x4f1fb6
mov dword [ebp - 0x3dc], 0
mov al, byte [ebp - 0x3dc]
mov byte [ebp - 0x59], al
movzx ecx, byte [ebp - 0x59]
movzx edx, byte [ebp - 0x30]
or ecx, edx
mov byte [ebp - 0x59], cl
movzx eax, byte [ebp - 0x59]
test eax, eax
je 0x4f1fe3
lea ecx, [ebp - 0xa0]
push ecx
lea ecx, [ebp - 0x40]
call fcn.004f2140
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x58]
call fcn.004021f0
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x64]
call fcn.00401e50
jmp 0x4f1676
lea edx, [ebp - 0x40]
push edx
mov ecx, dword [ebp + 0xc]
call fcn.004f21c0
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x48]
call fcn.00401e10
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x40]
call fcn.004df830
jmp 0x4f139f
mov byte [ebp - 0x296], 1
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x18]
call fcn.004021f0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x20]
call fcn.00401e10
mov al, byte [ebp - 0x296]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret