Function at 0x504f50
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
add esp, 0xfffffbe0
mov eax, dword [ebp + 8]
mov edx, eax
mov esi, dword [ebp + 0x14]
mov edi, dword [ebp + 0x10]
lea ebx, [ebp + 0xc]
mov dword [esp + 0x40c], esi
mov dword [esp + 0x408], edi
mov dword [esp + 0x404], ecx
mov ecx, dword [esp + 0x404]
mov dword [esp + 0x410], ecx
lea ecx, [esp + 0x400]
mov dword [esp + 0x360], ebx
mov dword [esp + 0x35c], eax
mov dword [esp + 0x358], edx
call fcn.0041f9f0
mov byte [esp + 0x3ff], 0
mov ecx, dword [esp + 0x410]
mov dword [esp + 0x354], eax
call fcn.004e3e70
mov dword [esp + 0x414], eax
mov dword [esp + 0x364], 0x3519315
mov eax, dword [esp + 0x364]
mov ecx, 0x437378
mov ecx, eax
sub ecx, 0x81f7bd28
mov dword [esp + 0x350], eax
mov dword [esp + 0x34c], ecx
jg 0x50502c
jmp 0x50500e
mov eax, dword [esp + 0x350]
sub eax, 0x80538174
mov dword [esp + 0x348], eax
je 0x5075ac
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0x8e588523
mov dword [esp + 0x344], eax
jg 0x505069
jmp 0x50504a
mov eax, dword [esp + 0x350]
add eax, 0x7e0842d7
mov dword [esp + 0x340], eax
je 0x506c88
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0x7b7aba24
mov dword [esp + 0x33c], eax
jg 0x50626c
jmp 0x505087
mov eax, dword [esp + 0x350]
sub eax, 0x7a059799
mov dword [esp + 0x338], eax
jg 0x50624e
jmp 0x5050a5
mov eax, dword [esp + 0x350]
sub eax, 0x7878618d
mov dword [esp + 0x334], eax
jg 0x50622f
jmp 0x5050c3
mov eax, dword [esp + 0x350]
add eax, 0x8ba8e218
mov dword [esp + 0x330], eax
jg 0x506211
jmp 0x5050e2
mov eax, dword [esp + 0x350]
sub eax, 0x71888cef
mov dword [esp + 0x32c], eax
jg 0x5061f3
jmp 0x505100
mov eax, dword [esp + 0x350]
sub eax, 0x6b40fead
mov dword [esp + 0x328], eax
jg 0x5061d5
jmp 0x50511e
mov eax, dword [esp + 0x350]
sub eax, 0x69f6706c
mov dword [esp + 0x324], eax
jg 0x5061b7
jmp 0x50513c
mov eax, dword [esp + 0x350]
add eax, 0x9a23a8d2
mov dword [esp + 0x320], eax
jg 0x506199
jmp 0x50515b
mov eax, dword [esp + 0x350]
add eax, 0x9b2463e4
mov dword [esp + 0x31c], eax
jg 0x50617a
jmp 0x50517a
mov eax, dword [esp + 0x350]
sub eax, 0x6014ce5e
mov dword [esp + 0x318], eax
jg 0x50615c
jmp 0x505198
mov eax, dword [esp + 0x350]
sub eax, 0x5c111c0e
mov dword [esp + 0x314], eax
jg 0x50613e
jmp 0x5051b6
mov eax, dword [esp + 0x350]
sub eax, 0x5919b489
mov dword [esp + 0x310], eax
jg 0x506120
jmp 0x5051d4
mov eax, dword [esp + 0x350]
add eax, 0xaaafb2ed
mov dword [esp + 0x30c], eax
jg 0x506102
jmp 0x5051f3
mov eax, dword [esp + 0x350]
sub eax, 0x517cdfdd
mov dword [esp + 0x308], eax
jg 0x5060e4
jmp 0x505211
mov eax, dword [esp + 0x350]
sub eax, 0x4c0640d3
mov dword [esp + 0x304], eax
jg 0x5060c5
jmp 0x50522f
mov eax, dword [esp + 0x350]
sub eax, 0x4b100bd3
mov dword [esp + 0x300], eax
jg 0x5060a6
jmp 0x50524d
mov eax, dword [esp + 0x350]
sub eax, 0x434d4e57
mov dword [esp + 0x2fc], eax
jg 0x506088
jmp 0x50526b
mov eax, dword [esp + 0x350]
add eax, 0xbf3d945d
mov dword [esp + 0x2f8], eax
jg 0x506069
jmp 0x50528a
mov eax, dword [esp + 0x350]
add eax, 0x70c1c723
mov dword [esp + 0x2f4], eax
jg 0x5052c8
jmp 0x5052a9
mov eax, dword [esp + 0x350]
add eax, 0x71a77adc
mov dword [esp + 0x2f0], eax
je 0x5076e4
jmp 0x50628b
mov eax, dword [esp + 0x350]
add eax, 0x707d39fd
mov dword [esp + 0x2ec], eax
jg 0x505305
jmp 0x5052e7
mov eax, dword [esp + 0x350]
sub eax, 0x8f3e38de
mov dword [esp + 0x2e8], eax
je 0x506be7
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0x9199cfab
mov dword [esp + 0x2e4], eax
jg 0x505341
jmp 0x505323
mov eax, dword [esp + 0x350]
sub eax, 0x8f82c604
mov dword [esp + 0x2e0], eax
je 0x5075bc
jmp 0x50628b
mov eax, dword [esp + 0x350]
add eax, 0x6d0d1ab0
mov dword [esp + 0x2dc], eax
jg 0x50537e
jmp 0x505360
mov eax, dword [esp + 0x350]
sub eax, 0x9199cfac
mov dword [esp + 0x2d8], eax
je 0x506fc9
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0x9694702f
mov dword [esp + 0x2d4], eax
jg 0x5053ba
jmp 0x50539c
mov eax, dword [esp + 0x350]
sub eax, 0x92f2e551
mov dword [esp + 0x2d0], eax
je 0x506dfe
jmp 0x50628b
mov eax, dword [esp + 0x350]
add eax, 0x6904d82f
mov dword [esp + 0x2cc], eax
jg 0x5053f7
jmp 0x5053d9
mov eax, dword [esp + 0x350]
sub eax, 0x96947030
mov dword [esp + 0x2c8], eax
je 0x5078ca
jmp 0x50628b
mov eax, dword [esp + 0x350]
add eax, 0x5f6a4340
mov dword [esp + 0x2c4], eax
jg 0x505435
jmp 0x505416
mov eax, dword [esp + 0x350]
add eax, 0x6904d82e
mov dword [esp + 0x2c0], eax
je 0x50777d
jmp 0x50628b
mov eax, dword [esp + 0x350]
add eax, 0x5e946b61
mov dword [esp + 0x2bc], eax
jg 0x505472
jmp 0x505454
mov eax, dword [esp + 0x350]
sub eax, 0xa095bcc1
mov dword [esp + 0x2b8], eax
je 0x506677
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0xa45c6800
mov dword [esp + 0x2b4], eax
jg 0x5054ae
jmp 0x505490
mov eax, dword [esp + 0x350]
sub eax, 0xa16b94a0
mov dword [esp + 0x2b0], eax
je 0x506756
jmp 0x50628b
mov eax, dword [esp + 0x350]
add eax, 0x52dc5be1
mov dword [esp + 0x2ac], eax
jg 0x5054ec
jmp 0x5054cd
mov eax, dword [esp + 0x350]
add eax, 0x5ba397ff
mov dword [esp + 0x2a8], eax
je 0x506b6e
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0xafe016bb
mov dword [esp + 0x2a4], eax
jg 0x505528
jmp 0x50550a
mov eax, dword [esp + 0x350]
sub eax, 0xad23a420
mov dword [esp + 0x2a0], eax
je 0x5068ce
jmp 0x50628b
mov eax, dword [esp + 0x350]
add eax, 0xc0d42fc3
mov dword [esp + 0x29c], eax
jg 0x50604b
jmp 0x505547
mov eax, dword [esp + 0x350]
sub eax, 0x3f03045f
mov dword [esp + 0x298], eax
jg 0x50602d
jmp 0x505565
mov eax, dword [esp + 0x350]
sub eax, 0x3e80409d
mov dword [esp + 0x294], eax
jg 0x50600f
jmp 0x505583
mov eax, dword [esp + 0x350]
sub eax, 0x3e3f928d
mov dword [esp + 0x290], eax
jg 0x505ff1
jmp 0x5055a1
mov eax, dword [esp + 0x350]
sub eax, 0x3d4ba31d
mov dword [esp + 0x28c], eax
jg 0x505fd3
jmp 0x5055bf
mov eax, dword [esp + 0x350]
sub eax, 0x3cf18c7a
mov dword [esp + 0x288], eax
jg 0x505fb5
jmp 0x5055dd
mov eax, dword [esp + 0x350]
add eax, 0xc6822123
mov dword [esp + 0x284], eax
jg 0x505f96
jmp 0x5055fc
mov eax, dword [esp + 0x350]
add eax, 0xc931c24a
mov dword [esp + 0x280], eax
jg 0x505f77
jmp 0x50561b
mov eax, dword [esp + 0x350]
add eax, 0xcb434411
mov dword [esp + 0x27c], eax
jg 0x505f59
jmp 0x50563a
mov eax, dword [esp + 0x350]
add eax, 0xcc7da275
mov dword [esp + 0x278], eax
jg 0x505f3b
jmp 0x505659
mov eax, dword [esp + 0x350]
sub eax, 0x3364663f
mov dword [esp + 0x274], eax
jg 0x505f1d
jmp 0x505677
mov eax, dword [esp + 0x350]
add eax, 0xcfabcc4d
mov dword [esp + 0x270], eax
jg 0x505eff
jmp 0x505696
mov eax, dword [esp + 0x350]
add eax, 0xd019d04c
mov dword [esp + 0x26c], eax
jg 0x505ee1
jmp 0x5056b5
mov eax, dword [esp + 0x350]
sub eax, 0x2f6a78a7
mov dword [esp + 0x268], eax
jg 0x505ec3
jmp 0x5056d3
mov eax, dword [esp + 0x350]
sub eax, 0x251a1129
mov dword [esp + 0x264], eax
jg 0x505ea5
jmp 0x5056f1
mov eax, dword [esp + 0x350]
sub eax, 0x1a406c62
mov dword [esp + 0x260], eax
jg 0x505e87
jmp 0x50570f
mov eax, dword [esp + 0x350]
sub eax, 0x11ef866f
mov dword [esp + 0x25c], eax
jg 0x505e68
jmp 0x50572d
mov eax, dword [esp + 0x350]
add eax, 0xee4cf814
mov dword [esp + 0x258], eax
jg 0x505e49
jmp 0x50574c
mov eax, dword [esp + 0x350]
sub eax, 0x119e3450
mov dword [esp + 0x254], eax
jg 0x505e2b
jmp 0x50576a
mov eax, dword [esp + 0x350]
add eax, 0xef7c106c
mov dword [esp + 0x250], eax
jg 0x505e0c
jmp 0x505789
mov eax, dword [esp + 0x350]
sub eax, 0x102cd7b2
mov dword [esp + 0x24c], eax
jg 0x505dee
jmp 0x5057a7
mov eax, dword [esp + 0x350]
sub eax, 0xdc0fb6c
mov dword [esp + 0x248], eax
jg 0x505dcf
jmp 0x5057c5
mov eax, dword [esp + 0x350]
sub eax, 0xb4a3e48
mov dword [esp + 0x244], eax
jg 0x505db0
jmp 0x5057e3
mov eax, dword [esp + 0x350]
sub eax, 0x5096f0a
mov dword [esp + 0x240], eax
jg 0x505d92
jmp 0x505801
mov eax, dword [esp + 0x350]
add eax, 0xfcae6cec
mov dword [esp + 0x23c], eax
jg 0x505d74
jmp 0x505820
mov eax, dword [esp + 0x350]
sub eax, 0xf93aadd7
mov dword [esp + 0x238], eax
jg 0x505d56
jmp 0x50583e
mov eax, dword [esp + 0x350]
sub eax, 0xf3f214dc
mov dword [esp + 0x234], eax
jg 0x505d37
jmp 0x50585c
mov eax, dword [esp + 0x350]
add eax, 0xeed5b66
mov dword [esp + 0x230], eax
jg 0x505d19
jmp 0x50587b
mov eax, dword [esp + 0x350]
sub eax, 0xeb8efd59
mov dword [esp + 0x22c], eax
jg 0x505cfb
jmp 0x505899
mov eax, dword [esp + 0x350]
add eax, 0x15b66fa3
mov dword [esp + 0x228], eax
jg 0x505cdc
jmp 0x5058b8
mov eax, dword [esp + 0x350]
add eax, 0x166d3765
mov dword [esp + 0x224], eax
jg 0x505cbe
jmp 0x5058d7
mov eax, dword [esp + 0x350]
add eax, 0x17249871
mov dword [esp + 0x220], eax
jg 0x505ca0
jmp 0x5058f6
mov eax, dword [esp + 0x350]
sub eax, 0xe543a190
mov dword [esp + 0x21c], eax
jg 0x505c82
jmp 0x505914
mov eax, dword [esp + 0x350]
sub eax, 0xe536b967
mov dword [esp + 0x218], eax
jg 0x505c64
jmp 0x505932
mov eax, dword [esp + 0x350]
sub eax, 0xe487851f
mov dword [esp + 0x214], eax
jg 0x505c46
jmp 0x505950
mov eax, dword [esp + 0x350]
add eax, 0x1cb1ee70
mov dword [esp + 0x210], eax
jg 0x505c27
jmp 0x50596f
mov eax, dword [esp + 0x350]
add eax, 0x20e2af9f
mov dword [esp + 0x20c], eax
jg 0x505c09
jmp 0x50598e
mov eax, dword [esp + 0x350]
add eax, 0x24583866
mov dword [esp + 0x208], eax
jg 0x505beb
jmp 0x5059ad
mov eax, dword [esp + 0x350]
sub eax, 0xd943491e
mov dword [esp + 0x204], eax
jg 0x505bcd
jmp 0x5059cb
mov eax, dword [esp + 0x350]
sub eax, 0xd67ac65e
mov dword [esp + 0x200], eax
jg 0x505baf
jmp 0x5059e9
mov eax, dword [esp + 0x350]
sub eax, 0xd67ac65f
mov dword [esp + 0x1c0], eax
je 0x5071b8
mov eax, dword [esp + 0x350]
sub eax, 0xd943491f
mov dword [esp + 0x1bc], eax
je 0x50634a
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0xdba7c79b
mov dword [esp + 0x1b8], eax
je 0x507059
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0xdf1d5062
mov dword [esp + 0x1b4], eax
je 0x506eb5
jmp 0x50628b
mov eax, dword [esp + 0x350]
add eax, 0x1cb1ee6f
mov dword [esp + 0x1b0], eax
je 0x507694
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0xe4878520
mov dword [esp + 0x1ac], eax
je 0x5077ee
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0xe536b968
mov dword [esp + 0x1a8], eax
je 0x506c60
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0xe543a191
mov dword [esp + 0x1a4], eax
je 0x506c98
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0xe8db6790
mov dword [esp + 0x1a0], eax
je 0x506d3c
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0xe992c89c
mov dword [esp + 0x19c], eax
je 0x507049
jmp 0x50628b
mov eax, dword [esp + 0x350]
add eax, 0x15b66fa2
mov dword [esp + 0x198], eax
je 0x507374
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0xeb8efd5a
mov dword [esp + 0x194], eax
je 0x50784e
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0xf112a49b
mov dword [esp + 0x190], eax
je 0x506a8f
jmp 0x50628b
mov eax, dword [esp + 0x350]
add eax, 0xc0deb23
mov dword [esp + 0x18c], eax
je 0x506856
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0xf93aadd8
mov dword [esp + 0x188], eax
je 0x5072d8
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0x3519315
mov dword [esp + 0x184], eax
je 0x506290
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0x5096f0b
mov dword [esp + 0x180], eax
je 0x506cba
jmp 0x50628b
mov eax, dword [esp + 0x350]
add eax, 0xf4b5c1b7
mov dword [esp + 0x17c], eax
je 0x506cca
jmp 0x50628b
mov eax, dword [esp + 0x350]
add eax, 0xf23f0493
mov dword [esp + 0x178], eax
je 0x506698
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0x102cd7b3
mov dword [esp + 0x174], eax
je 0x5078ba
jmp 0x50628b
mov eax, dword [esp + 0x350]
add eax, 0xef7c106b
mov dword [esp + 0x170], eax
je 0x5075ee
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0x119e3451
mov dword [esp + 0x16c], eax
je 0x506550
jmp 0x50628b
mov eax, dword [esp + 0x350]
add eax, 0xee4cf813
mov dword [esp + 0x168], eax
je 0x506fda
jmp 0x50628b
mov eax, dword [esp + 0x350]
add eax, 0xee107990
mov dword [esp + 0x164], eax
je 0x506e94
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0x1a406c63
mov dword [esp + 0x160], eax
je 0x5064fc
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0x251a112a
mov dword [esp + 0x15c], eax
je 0x50747f
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0x2f6a78a8
mov dword [esp + 0x158], eax
je 0x5071f9
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0x2fe62fb5
mov dword [esp + 0x154], eax
je 0x507106
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0x305433b4
mov dword [esp + 0x150], eax
je 0x50635b
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0x33646640
mov dword [esp + 0x14c], eax
je 0x506970
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0x33825d8c
mov dword [esp + 0x148], eax
je 0x506733
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0x34bcbbf0
mov dword [esp + 0x144], eax
je 0x506687
jmp 0x50628b
mov eax, dword [esp + 0x350]
add eax, 0xc931c249
mov dword [esp + 0x140], eax
je 0x5062bf
jmp 0x50628b
mov eax, dword [esp + 0x350]
add eax, 0xc6822122
mov dword [esp + 0x13c], eax
je 0x50752c
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0x3cf18c7b
mov dword [esp + 0x138], eax
je 0x506ed6
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0x3d4ba31e
mov dword [esp + 0x134], eax
je 0x5075fe
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0x3e3f928e
mov dword [esp + 0x130], eax
je 0x507683
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0x3e80409e
mov dword [esp + 0x12c], eax
je 0x5075cd
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0x3f030460
mov dword [esp + 0x128], eax
je 0x506ceb
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0x3f2bd03e
mov dword [esp + 0x124], eax
je 0x50760e
jmp 0x50628b
mov eax, dword [esp + 0x350]
add eax, 0xbf3d945c
mov dword [esp + 0x120], eax
je 0x506e17
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0x434d4e58
mov dword [esp + 0x11c], eax
je 0x5074be
jmp 0x50628b
mov eax, dword [esp + 0x350]
add eax, 0xb4eff42c
mov dword [esp + 0x118], eax
je 0x506d5f
jmp 0x50628b
mov eax, dword [esp + 0x350]
add eax, 0xb3f9bf2c
mov dword [esp + 0x114], eax
je 0x506f25
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0x517cdfde
mov dword [esp + 0x110], eax
je 0x506a14
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0x55504d14
mov dword [esp + 0x10c], eax
je 0x5063cf
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0x5919b48a
mov dword [esp + 0x108], eax
je 0x506960
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0x5c111c0f
mov dword [esp + 0x104], eax
je 0x5065f4
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0x6014ce5f
mov dword [esp + 0x100], eax
je 0x50646c
jmp 0x50628b
mov eax, dword [esp + 0x350]
add eax, 0x9b2463e3
mov dword [esp + 0xfc], eax
je 0x507263
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0x65dc572f
mov dword [esp + 0xf8], eax
je 0x50759c
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0x69f6706d
mov dword [esp + 0xf4], eax
je 0x5075de
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0x6b40feae
mov dword [esp + 0xf0], eax
je 0x507936
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0x71888cf0
mov dword [esp + 0xec], eax
je 0x507069
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0x74571de9
mov dword [esp + 0xe8], eax
je 0x506ea4
jmp 0x50628b
mov eax, dword [esp + 0x350]
add eax, 0x87879e72
mov dword [esp + 0xe4], eax
je 0x506817
jmp 0x50628b
mov eax, dword [esp + 0x350]
sub eax, 0x7a05979a
mov dword [esp + 0xe0], eax
je 0x506ec6
jmp 0x50628b
mov eax, dword [esp + 0x350]
add eax, 0x848545db
mov dword [esp + 0xdc], eax
je 0x506c78
jmp 0x50628b
jmp 0x507941
mov eax, 0xb624d6dc
mov ecx, 0x36ce3db7
mov edx, dword [esp + 0x414]
push eax
mov eax, 0x54d55b12
xor eax, 0x54d55b12
cmp edx, eax
pop eax
cmove eax, ecx
mov dword [esp + 0x364], eax
jmp 0x507941
mov eax, dword [esp + 0x40c]
mov ecx, dword [esp + 0x408]
mov dword [esp], ecx
mov dword [esp + 0xd8], eax
call fcn.004e3e90
mov ecx, dword [esp + 0x410]
mov ecx, dword [ecx]
mov edx, dword [esp + 0x410]
mov esi, esp
mov edi, dword [esp + 0xd8]
call fcn.00507950
mov dword [esi + 0xc], eax
mov dword [esi + 8], ecx
mov eax, dword [esp + 0x35c]
call fcn.00507960
mov dword [esi + 4], 1
mov ecx, edx
call fcn.0041fa40
sub esp, 0x14
mov dword [esp + 0x364], 0x3e3f928e
jmp 0x507941
mov eax, 0x305433b4
mov dword [esp + 0x364], eax
jmp 0x507941
mov ecx, dword [esp + 0x410]
mov eax, esp
lea edx, [esp + 0x3f8]
call fcn.00507970
call fcn.005049d0
sub esp, 4
lea eax, [esp + 0x3f8]
mov ecx, esp
mov dword [ecx], eax
mov ecx, dword [esp + 0x360]
call fcn.004d69f0
sub esp, 4
mov ecx, 0xc304042f
and al, 1
mov byte [esp + 0x419], al
mov dword [esp + 0x364], ecx
jmp 0x507941
mov eax, dword [esp + 0x410]
mov ecx, esp
lea edx, [esp + 0x3f0]
call fcn.00507980
mov ecx, eax
call fcn.004f4df0
sub esp, 4
mov eax, dword [esp + 0x408]
mov ecx, dword [esp + 0x410]
mov edx, esp
mov dword [edx], eax
call fcn.00514160
sub esp, 4
mov ecx, dword [esp + 0x360]
mov dword [esp + 0xd4], eax
call fcn.004d6a50
mov ecx, dword [esp + 0x410]
mov edx, esp
call fcn.00507990
call fcn.0054bce0
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0xd4]
mov dword [ecx + 4], edx
call fcn.005079a0
lea ecx, [esp + 0x3f0]
call fcn.00504c10
sub esp, 8
mov ecx, 0x6014ce5f
mov edx, 0xc92b41a8
test al, 1
cmovne ecx, edx
mov dword [esp + 0x364], ecx
jmp 0x507941
mov eax, dword [esp + 0x40c]
mov ecx, dword [esp + 0x408]
mov dword [esp], ecx
mov dword [esp + 0xd0], eax
call fcn.004e3e90
mov ecx, dword [esp + 0x360]
mov dword [esp + 0xcc], eax
call fcn.004d6a50
mov ecx, dword [esp + 0x410]
mov edx, esp
mov esi, dword [esp + 0xd0]
mov dword [edx + 0x10], esi
mov edi, dword [esp + 0xcc]
mov dword [edx + 0xc], edi
call fcn.005079b0
mov eax, dword [esp + 0x35c]
mov dword [edx], eax
call fcn.005079c0
call fcn.0041fa40
sub esp, 0x14
mov dword [esp + 0x364], 0x3e3f928e
jmp 0x507941
mov ecx, dword [esp + 0x410]
mov eax, esp
lea edx, [esp + 0x3e8]
mov dword [eax], edx
call fcn.0041f840
sub esp, 4
lea eax, [esp + 0x3e8]
mov ecx, 0x400000
mov ecx, esp
mov dword [ecx], eax
mov ecx, dword [esp + 0x360]
call fcn.004d69f0
sub esp, 4
mov ecx, 0x34bcbbf0
mov edx, 0x119e3451
test al, 1
cmovne ecx, edx
mov dword [esp + 0x364], ecx
jmp 0x507941
mov eax, dword [esp + 0x410]
mov ecx, esp
lea edx, [esp + 0x3e0]
mov dword [ecx], edx
mov ecx, eax
call fcn.004f4df0
sub esp, 4
mov ecx, dword [esp + 0x410]
call fcn.0041f8e0
mov eax, dword [eax]
mov ecx, dword [esp + 0x410]
mov edx, 0x7fffff
mov edx, esp
mov dword [edx], eax
call fcn.0054bce0
sub esp, 4
mov ecx, dword [esp + 0x408]
mov edx, dword [esp + 0x410]
mov esi, esp
mov dword [esi], ecx
mov ecx, 1
mov ecx, edx
mov dword [esp + 0xc8], eax
call fcn.00514160
sub esp, 4
mov edx, ebx
mov ecx, esp
mov edx, dword [esp + 0xc8]
mov dword [ecx + 4], edx
mov dword [ecx], eax
lea ecx, [esp + 0x3e0]
call fcn.00504c10
sub esp, 8
mov ecx, 0x5c111c0f
mov edx, 0xa095bcc1
test al, 1
cmovne ecx, edx
mov dword [esp + 0x364], ecx
jmp 0x507941
mov eax, dword [esp + 0x40c]
mov ecx, dword [esp + 0x408]
mov dword [esp], ecx
mov dword [esp + 0xc4], eax
call fcn.004e3e90
mov ecx, dword [esp + 0x410]
mov dword [esp + 0xc0], eax
call fcn.0041f8e0
mov eax, dword [eax]
mov ecx, dword [esp + 0x410]
mov edx, esi
mov edx, esp
mov esi, dword [esp + 0xc4]
call fcn.005079d0
mov edi, dword [esp + 0xc0]
call fcn.005079e0
mov dword [edx + 8], eax
mov eax, dword [esp + 0x35c]
call fcn.005079f0
mov dword [edx + 4], 0
call fcn.0041fa40
sub esp, 0x14
mov dword [esp + 0x364], 0x3e3f928e
jmp 0x507941
mov dword [esp + 0x364], 0xe543a191
jmp 0x507941
mov eax, 0xdc0fb6d
mov dword [esp + 0x364], eax
jmp 0x507941
mov eax, dword [esp + 0x410]
mov ecx, esp
lea edx, [esp + 0x3d8]
call fcn.00507a00
mov ecx, eax
call fcn.004f4df0
sub esp, 4
mov eax, dword [esp + 0x408]
mov ecx, dword [esp + 0x410]
mov edx, esp
call fcn.00507a10
call fcn.00514160
sub esp, 4
mov ecx, dword [esp + 0x360]
mov dword [esp + 0xbc], eax
call fcn.004d6a50
mov ecx, dword [esp + 0x410]
mov edx, esp
mov dword [edx], eax
call fcn.0054bce0
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0xbc]
call fcn.00507a20
mov dword [ecx], eax
lea ecx, [esp + 0x3d8]
call fcn.00504c10
sub esp, 8
mov ecx, 0x33825d8c
and al, 1
mov byte [esp + 0x41a], al
mov dword [esp + 0x364], ecx
jmp 0x507941
mov eax, 0xa16b94a0
mov ecx, 0x33646640
mov dl, byte [esp + 0x41a]
test dl, 1
cmovne eax, ecx
mov dword [esp + 0x364], eax
jmp 0x507941
mov eax, dword [esp + 0x410]
mov ecx, 0
mov ecx, esp
lea edx, [esp + 0x3d0]
call fcn.00507a30
mov ecx, 0x7f
mov ecx, eax
call fcn.004f4df0
sub esp, 4
mov eax, dword [esp + 0x360]
mov ecx, dword [eax]
mov dword [esp + 0x400], ecx
lea ecx, [esp + 0x400]
call fcn.00541210
mov ecx, eax
call fcn.004d6a50
mov ecx, dword [esp + 0x410]
mov edx, esp
mov dword [edx], eax
call fcn.0054bce0
sub esp, 4
mov ecx, dword [esp + 0x408]
mov edx, dword [esp + 0x410]
mov esi, esp
mov dword [esi], ecx
mov ecx, edx
mov dword [esp + 0xb8], eax
call fcn.00514160
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0xb8]
call fcn.00507a40
call fcn.00507a50
lea ecx, [esp + 0x3d0]
call fcn.00504c10
sub esp, 8
mov ecx, 0x57fc3c
mov ecx, dword [ecx]
mov edx, 0x33646640
test al, 1
cmovne ecx, edx
mov dword [esp + 0x364], ecx
jmp 0x507941
lea eax, [esp + 0x400]
mov ecx, eax
call fcn.004d6a50
mov dword [esp], eax
call fcn.00504bb0
call fcn.00507a60
mov dword [esp], eax
call fcn.005407e0
mov ecx, 0xad23a420
mov edx, 0xf3f214dd
cmp byte [eax], 0
cmovne ecx, edx
mov dword [esp + 0x364], ecx
jmp 0x507941
mov eax, dword [esp + 0x40c]
mov ecx, dword [esp + 0x408]
mov dword [esp], ecx
mov dword [esp + 0xb4], eax
call fcn.004e3e90
lea ecx, [esp + 0x400]
mov dword [esp + 0xb0], eax
call fcn.004d6a50
mov ecx, dword [esp + 0x410]
mov edx, esp
mov esi, dword [esp + 0xb4]
mov dword [edx + 0x10], esi
mov edi, dword [esp + 0xb0]
mov dword [edx + 0xc], edi
mov dword [edx + 8], eax
mov eax, dword [esp + 0x35c]
mov dword [edx], eax
mov dword [edx + 4], 0
call fcn.0041fa40
sub esp, 0x14
mov dword [esp + 0x364], 0x3e3f928e
jmp 0x507941
mov eax, 0xd0f217fb
mov dword [esp + 0x364], eax
jmp 0x507941
mov dword [esp + 0x364], 0x3e3f928e
jmp 0x507941
mov eax, dword [esp + 0x410]
mov ecx, esp
lea edx, [esp + 0x3c8]
mov dword [ecx], edx
mov ecx, eax
call fcn.004f4df0
sub esp, 4
mov eax, dword [esp + 0x360]
mov ecx, eax
call fcn.004d6a50
mov ecx, dword [esp + 0x410]
mov edx, esp
mov dword [edx], eax
call fcn.0054bce0
sub esp, 4
mov ecx, dword [esp + 0x408]
mov edx, dword [esp + 0x410]
mov esi, esp
mov dword [esi], ecx
mov ecx, edx
mov dword [esp + 0xa4], eax
call fcn.00514160
sub esp, 4
mov edx, eax
mov ecx, esp
mov edx, dword [esp + 0xa4]
call fcn.00507a70
mov dword [ecx], eax
lea ecx, [esp + 0x3c8]
call fcn.00504c10
sub esp, 8
mov ecx, 0x517cdfde
pushfd
mov edx, 0xb33cbf07
xor edx, 0x560a066f
popfd
test al, 1
cmovne ecx, edx
mov dword [esp + 0x364], ecx
jmp 0x507941
mov eax, dword [esp + 0x360]
call fcn.00507a80
mov dword [esp + 0x400], ecx
lea ecx, [esp + 0x400]
call fcn.004c6110
mov ecx, dword [esp + 0x410]
mov edx, esp
lea esi, [esp + 0x3c0]
call fcn.00507a90
mov dword [esp + 0xa0], eax
call fcn.0041f840
sub esp, 4
lea eax, [esp + 0x3c0]
mov ecx, esp
call fcn.00507aa0
mov ecx, dword [esp + 0xa0]
call fcn.004d69f0
sub esp, 4
mov ecx, 0xf112a49b
mov edx, 0xafe80f4e
test al, 1
cmovne ecx, edx
mov dword [esp + 0x364], ecx
jmp 0x507941
mov eax, dword [esp + 0x410]
mov ecx, esp
lea edx, [esp + 0x3b8]
mov dword [ecx], edx
mov ecx, eax
call fcn.004f4df0
sub esp, 4
mov eax, dword [esp + 0x408]
mov ecx, dword [esp + 0x410]
mov edx, esp
mov dword [edx], eax
call fcn.00514160
sub esp, 4
lea ecx, [esp + 0x400]
mov dword [esp + 0x9c], eax
call fcn.004d6a50
mov ecx, dword [esp + 0x410]
mov edx, esp
mov dword [edx], eax
call fcn.0054bce0
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0x9c]
call fcn.00507ab0
mov dword [ecx], eax
lea ecx, [esp + 0x3b8]
call fcn.00504c10
sub esp, 8
pushfd
mov ecx, 0xc31c9871
sub ecx, 0x13348923
popfd
mov edx, 0xe536b968
test al, 1
cmovne ecx, edx
mov dword [esp + 0x364], ecx
jmp 0x507941
mov eax, dword [esp + 0x40c]
mov ecx, dword [esp + 0x408]
mov dword [esp], ecx
mov dword [esp + 0x98], eax
call fcn.004e3e90
mov ecx, dword [esp + 0x360]
mov dword [esp + 0x94], eax
call fcn.004d6a50
mov ecx, dword [esp + 0x410]
mov edx, esp
mov esi, dword [esp + 0x98]
mov dword [edx + 0x10], esi
mov edi, dword [esp + 0x94]
mov dword [edx + 0xc], edi
mov dword [edx + 8], eax
mov eax, dword [esp + 0x35c]
call fcn.00507ac0
call fcn.00507ad0
call fcn.0041fa40
sub esp, 0x14
mov dword [esp + 0x364], 0x3e3f928e
jmp 0x507941
mov eax, dword [esp + 0x40c]
mov ecx, dword [esp + 0x408]
mov dword [esp], ecx
mov dword [esp + 0x90], eax
call fcn.004e3e90
lea ecx, [esp + 0x400]
mov dword [esp + 0x8c], eax
call fcn.004d6a50
mov ecx, dword [esp + 0x410]
mov edx, esp
mov esi, dword [esp + 0x90]
mov dword [edx + 0x10], esi
mov edi, dword [esp + 0x8c]
mov dword [edx + 0xc], edi
mov dword [edx + 8], eax
mov eax, dword [esp + 0x35c]
call fcn.00507ae0
call fcn.00507af0
call fcn.0041fa40
sub esp, 0x14
mov dword [esp + 0x364], 0x3e3f928e
jmp 0x507941
mov byte [esp + 0x3ff], 1
mov dword [esp + 0x364], 0x7b7aba25
jmp 0x507941
mov dword [esp + 0x364], 0x81f7bd29
jmp 0x507941
mov dword [esp + 0x364], 0xe543a191
jmp 0x507941
mov eax, 0xb88938f0
mov dword [esp + 0x364], eax
jmp 0x507941
mov dword [esp + 0x364], 0xb4a3e49
jmp 0x507941
mov dword [esp + 0x364], 0x3d4ba31e
jmp 0x507941
mov ecx, dword [esp + 0x410]
mov eax, esp
lea edx, [esp + 0x3b0]
mov dword [eax], edx
call fcn.005049d0
sub esp, 4
lea eax, [esp + 0x3b0]
mov ecx, esp
call fcn.00507b00
mov ecx, dword [esp + 0x360]
call fcn.004d69f0
sub esp, 4
mov ecx, 0xe8db6790
and al, 1
mov byte [esp + 0x41b], al
mov dword [esp + 0x364], ecx
jmp 0x507941
mov eax, 0x3cf18c7b
mov ecx, 0x4b100bd4
mov dl, byte [esp + 0x41b]
test dl, 1
cmovne eax, ecx
mov dword [esp + 0x364], eax
jmp 0x507941
mov eax, dword [esp + 0x410]
mov ecx, esp
lea edx, [esp + 0x3a8]
mov dword [ecx], edx
mov ecx, eax
call fcn.004f4df0
sub esp, 4
mov eax, dword [esp + 0x360]
mov ecx, edx
mov ecx, eax
call fcn.004d6a50
mov ecx, dword [esp + 0x410]
mov edx, 0xfffff
mov edx, esp
mov dword [edx], eax
call fcn.0054bce0
sub esp, 4
mov ecx, dword [esp + 0x408]
mov edx, dword [esp + 0x410]
mov esi, esp
mov dword [esi], ecx
mov ecx, edx
mov dword [esp + 0x88], eax
call fcn.00514160
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0x88]
mov dword [ecx + 4], edx
mov dword [ecx], eax
lea ecx, [esp + 0x3a8]
call fcn.00504c10
sub esp, 8
mov ecx, 0x74571de9
mov edx, 0x92f2e551
test al, 1
cmovne ecx, edx
mov dword [esp + 0x364], ecx
jmp 0x507941
pushfd
mov eax, 0xa7cab8c3
sub eax, 0x67084d1f
popfd
mov dword [esp + 0x364], eax
jmp 0x507941
mov eax, dword [esp + 0x40c]
mov ecx, dword [esp + 0x408]
mov dword [esp], ecx
mov dword [esp + 0x84], eax
call fcn.004e3e90
mov ecx, dword [esp + 0x360]
mov dword [esp + 0x80], eax
call fcn.004d6a50
mov ecx, dword [esp + 0x410]
mov edx, esp
mov esi, dword [esp + 0x84]
mov dword [edx + 0x10], esi
mov edi, dword [esp + 0x80]
call fcn.00507b10
call fcn.00507b20
mov eax, dword [esp + 0x35c]
mov dword [edx], eax
mov dword [edx + 4], 1
call fcn.0041fa40
sub esp, 0x14
mov eax, 0x11ef8670
mov dword [esp + 0x364], eax
jmp 0x507941
mov dword [esp + 0x364], 0x3e3f928e
jmp 0x507941
mov eax, 0xdf1d5062
mov dword [esp + 0x364], eax
jmp 0x507941
mov eax, 0x7a05979a
mov dword [esp + 0x364], eax
jmp 0x507941
mov dword [esp + 0x364], 0x1083ef95
jmp 0x507941
mov ecx, dword [esp + 0x410]
mov eax, esp
lea edx, [esp + 0x3a0]
mov dword [eax], edx
call fcn.0041f840
sub esp, 4
lea eax, [esp + 0x3a0]
mov ecx, esp
mov dword [ecx], eax
mov ecx, dword [esp + 0x360]
call fcn.004d69f0
sub esp, 4
mov ecx, 0x71888cf0
mov edx, 0x4c0640d4
test al, 1
cmovne ecx, edx
mov dword [esp + 0x364], ecx
jmp 0x507941
mov eax, dword [esp + 0x410]
mov ecx, esp
lea edx, [esp + 0x398]
mov dword [ecx], edx
mov ecx, 0x4372dc
mov ecx, eax
call fcn.004f4df0
sub esp, 4
mov eax, dword [esp + 0x408]
mov ecx, dword [esp + 0x410]
mov edx, esp
mov dword [edx], eax
call fcn.00514160
sub esp, 4
mov ecx, dword [esp + 0x410]
mov dword [esp + 0x7c], eax
call fcn.0041f8e0
call fcn.00507b30
mov ecx, dword [esp + 0x410]
mov edx, 0x437390
mov edx, esp
mov dword [edx], eax
call fcn.0054bce0
sub esp, 4
mov edx, eax
mov ecx, esp
mov edx, dword [esp + 0x7c]
mov dword [ecx + 4], edx
call fcn.00507b40
lea ecx, [esp + 0x398]
call fcn.00504c10
sub esp, 8
mov ecx, 0x57fcc8
mov ecx, dword [ecx]
mov edx, 0x9199cfac
test al, 1
cmovne ecx, edx
mov dword [esp + 0x364], ecx
jmp 0x507941
mov eax, 0x11b307ed
mov dword [esp + 0x364], eax
jmp 0x507941
mov eax, dword [esp + 0x40c]
mov ecx, dword [esp + 0x408]
mov dword [esp], ecx
mov dword [esp + 0x78], eax
call fcn.004e3e90
mov ecx, dword [esp + 0x410]
mov dword [esp + 0x74], eax
call fcn.0041f8e0
mov eax, dword [eax]
mov ecx, dword [esp + 0x410]
mov edx, esp
mov esi, dword [esp + 0x78]
call fcn.00507b50
mov edi, dword [esp + 0x74]
mov dword [edx + 0xc], edi
mov dword [edx + 8], eax
mov eax, dword [esp + 0x35c]
mov dword [edx], eax
call fcn.00507b60
call fcn.0041fa40
sub esp, 0x14
mov eax, 0xe992c89c
mov dword [esp + 0x364], eax
jmp 0x507941
mov dword [esp + 0x364], 0x3e3f928e
jmp 0x507941
mov dword [esp + 0x364], 0x8f82c604
jmp 0x507941
mov eax, dword [esp + 0x410]
mov ecx, esp
lea edx, [esp + 0x390]
call fcn.00507b70
mov ecx, eax
call fcn.004f4df0
sub esp, 4
mov eax, dword [esp + 0x360]
mov ecx, eax
call fcn.004d6a50
mov ecx, dword [esp + 0x410]
mov edx, esp
call fcn.00507b80
call fcn.0054bce0
sub esp, 4
mov ecx, dword [esp + 0x408]
mov edx, dword [esp + 0x410]
mov esi, esp
mov dword [esi], ecx
mov ecx, edx
mov dword [esp + 0x70], eax
call fcn.00514160
sub esp, 4
mov edx, 1
mov ecx, esp
mov edx, dword [esp + 0x70]
mov dword [ecx + 4], edx
mov dword [ecx], eax
lea ecx, [esp + 0x390]
call fcn.00504c10
sub esp, 8
mov ecx, 0xf93aadd8
mov edx, 0x2fe62fb5
test al, 1
cmovne ecx, edx
mov dword [esp + 0x364], ecx
jmp 0x507941
mov eax, dword [esp + 0x410]
mov ecx, esp
lea edx, [esp + 0x388]
call fcn.00507b90
mov ecx, eax
call fcn.004f4df0
sub esp, 4
mov eax, dword [esp + 0x408]
mov ecx, dword [esp + 0x410]
mov edx, 0x80000
mov edx, esp
mov dword [edx], eax
call fcn.00514160
sub esp, 4
mov ecx, dword [esp + 0x360]
mov edx, dword [ecx]
mov dword [esp + 0x400], edx
lea ecx, [esp + 0x400]
mov dword [esp + 0x6c], eax
call fcn.00541210
mov ecx, eax
call fcn.004d6a50
mov ecx, dword [esp + 0x410]
mov edx, esp
call fcn.00507ba0
call fcn.0054bce0
sub esp, 4
mov ecx, esp
mov edx, dword [esp + 0x6c]
call fcn.00507bb0
mov dword [ecx], eax
lea ecx, [esp + 0x388]
call fcn.00504c10
sub esp, 8
mov ecx, 0xf93aadd8
mov edx, 0xd67ac65f
test al, 1
cmovne ecx, edx
mov dword [esp + 0x364], ecx
jmp 0x507941
mov eax, dword [esp + 0x40c]
mov ecx, dword [esp + 0x408]
mov dword [esp], ecx
mov dword [esp + 0x68], eax
call fcn.004e3e90
lea ecx, [esp + 0x400]
mov dword [esp + 0x64], eax
call fcn.004d6a50
mov ecx, dword [esp + 0x410]
mov edx, esp
mov esi, dword [esp + 0x68]
mov dword [edx + 0x10], esi
mov edi, dword [esp + 0x64]
mov dword [edx + 0xc], edi
mov dword [edx + 8], eax
mov eax, dword [esp + 0x35c]
mov dword [edx], eax
call fcn.00507bc0
call fcn.0041fa40
sub esp, 0x14
mov dword [esp + 0x364], 0x3e3f928e
jmp 0x507941
mov eax, dword [esp + 0x40c]
mov ecx, dword [esp + 0x408]
mov dword [esp], ecx
mov dword [esp + 0x60], eax
call fcn.004e3e90
mov ecx, dword [esp + 0x360]
mov dword [esp + 0x5c], eax
call fcn.004d6a50
mov ecx, dword [esp + 0x410]
mov edx, 0x437360
mov edx, esp
mov esi, dword [esp + 0x60]
call fcn.00507bd0
mov edi, dword [esp + 0x5c]
mov dword [edx + 0xc], edi
call fcn.00507be0
mov eax, dword [esp + 0x35c]
mov dword [edx], eax
mov dword [edx + 4], 1
call fcn.0041fa40
sub esp, 0x14
mov dword [esp + 0x364], 0x3e3f928e
jmp 0x507941
mov eax, dword [esp + 0x410]
mov ecx, esp
lea edx, [esp + 0x380]
mov dword [ecx], edx
mov ecx, eax
call fcn.004f4df0
sub esp, 4
mov eax, dword [esp + 0x408]
mov ecx, dword [esp + 0x410]
mov edx, 0x43739c
mov edx, esp
mov dword [edx], eax
call fcn.00514160
sub esp, 4
mov ecx, dword [esp + 0x360]
mov dword [esp + 0x58], eax
call fcn.004d6a50
mov ecx, dword [esp + 0x410]
mov edx, 0x1ff
mov edx, esp
mov dword [edx], eax
call fcn.0054bce0
sub esp, 4
mov edx, ecx
mov ecx, esp
mov edx, dword [esp + 0x58]
call fcn.00507bf0
mov dword [ecx], eax
lea ecx, [esp + 0x380]
call fcn.00504c10
sub esp, 8
mov ecx, 0x65dc572f
mov edx, 0xea49905e
test al, 1
cmovne ecx, edx
mov dword [esp + 0x364], ecx
jmp 0x507941
mov eax, dword [esp + 0x360]
call fcn.00507c00
mov dword [esp + 0x400], ecx
lea ecx, [esp + 0x400]
call fcn.004c6110
mov ecx, dword [esp + 0x410]
mov edx, esp
lea esi, [esp + 0x378]
mov dword [edx], esi
mov dword [esp + 0x54], eax
call fcn.0041f840
sub esp, 4
lea eax, [esp + 0x378]
mov ecx, esp
mov dword [ecx], eax
mov ecx, dword [esp + 0x54]
call fcn.004d69f0
sub esp, 4
mov ecx, 0xafe016bc
mov edx, 0x251a112a
test al, 1
cmovne ecx, edx
mov dword [esp + 0x364], ecx
jmp 0x507941
mov eax, dword [esp + 0x360]
mov ecx, eax
call fcn.004d6a50
mov dword [esp], eax
call fcn.00504bb0
call fcn.00507c20
mov dword [esp], eax
call fcn.005407e0
mov ecx, 0x397ddede
mov edx, 0x434d4e58
cmp byte [eax], 0
cmovne ecx, edx
mov dword [esp + 0x364], ecx
jmp 0x507941
mov eax, dword [esp + 0x40c]
mov ecx, dword [esp + 0x408]
mov dword [esp], ecx
mov dword [esp + 0x4c], eax
call fcn.004e3e90
mov ecx, dword [esp + 0x360]
mov dword [esp + 0x48], eax
call fcn.004d6a50
mov ecx, dword [esp + 0x410]
mov edx, esp
mov esi, dword [esp + 0x4c]
mov dword [edx + 0x10], esi
mov edi, dword [esp + 0x48]
mov dword [edx + 0xc], edi
call fcn.00507c30
mov eax, dword [esp + 0x35c]
mov dword [edx], eax
mov dword [edx + 4], 0
call fcn.0041fa40
sub esp, 0x14
mov dword [esp + 0x364], 0x3e3f928e
jmp 0x507941
mov eax, dword [esp + 0x40c]
mov ecx, dword [esp + 0x408]
mov dword [esp], ecx
mov dword [esp + 0x44], eax
call fcn.004e3e90
lea ecx, [esp + 0x400]
mov dword [esp + 0x40], eax
call fcn.004d6a50
mov ecx, dword [esp + 0x410]
mov edx, ebx
mov edx, esp
mov esi, dword [esp + 0x44]
mov dword [edx + 0x10], esi
mov edi, dword [esp + 0x40]
call fcn.00507c40
call fcn.00507c50
mov eax, dword [esp + 0x35c]
mov dword [edx], eax
call fcn.00507c60
call fcn.0041fa40
sub esp, 0x14
mov dword [esp + 0x364], 0x3e3f928e
jmp 0x507941
mov dword [esp + 0x364], 0x80538174
jmp 0x507941
mov dword [esp + 0x364], 0x8f82c604
jmp 0x507941
mov eax, 0x3e80409e
mov dword [esp + 0x364], eax
jmp 0x507941
mov eax, 0x69f6706d
mov dword [esp + 0x364], eax
jmp 0x507941
mov dword [esp + 0x364], 0x1083ef95
jmp 0x507941
mov dword [esp + 0x364], 0x3d4ba31e
jmp 0x507941
mov dword [esp + 0x364], 0x3f2bd03e
jmp 0x507941
mov eax, dword [esp + 0x40c]
mov ecx, dword [esp + 0x408]
mov dword [esp], ecx
mov dword [esp + 0x3c], eax
call fcn.004e3e90
mov dl, byte [esp + 0x3ff]
mov ecx, dword [esp + 0x410]
mov esi, esp
mov edi, dword [esp + 0x3c]
call fcn.00507c70
mov dword [esi + 8], eax
lea eax, [esp + 0x368]
call fcn.00507c80
movzx eax, dl
and eax, 1
call fcn.00507c90
call fcn.004214d0
sub esp, 0x10
mov eax, dword [esp + 0x368]
mov ecx, dword [esp + 0x35c]
mov dword [ecx], eax
mov dword [esp + 0x364], 0x3e3f928e
jmp 0x507941
mov eax, dword [esp + 0x358]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x10
mov ecx, dword [esp + 0x410]
mov eax, 0x40
mov eax, esp
lea edx, [esp + 0x3f8]
call fcn.00507ca0
call fcn.005049d0
sub esp, 4
lea eax, [esp + 0x3f8]
mov ecx, esp
mov dword [ecx], eax
mov ecx, dword [esp + 0x360]
call fcn.004d69f0
sub esp, 4
mov dword [esp + 0x364], 0x305433b4
mov byte [esp + 0x3b], al
jmp 0x507941
mov eax, dword [esp + 0x410]
mov ecx, esp
lea edx, [esp + 0x3d8]
call fcn.00507cb0
mov ecx, 0x437384
mov ecx, eax
call fcn.004f4df0
sub esp, 4
mov eax, dword [esp + 0x408]
mov ecx, dword [esp + 0x410]
mov edx, 0x4374bc
mov edx, esp
mov dword [edx], eax
call fcn.00514160
sub esp, 4
mov ecx, dword [esp + 0x360]
mov dword [esp + 0x34], eax
call fcn.004d6a50
mov ecx, dword [esp + 0x410]
mov edx, esp
mov dword [edx], eax
call fcn.0054bce0
sub esp, 4
mov edx, 0x4374bc
mov ecx, esp
mov edx, dword [esp + 0x34]
mov dword [ecx + 4], edx
mov dword [ecx], eax
lea ecx, [esp + 0x3d8]
call fcn.00504c10
sub esp, 8
mov dword [esp + 0x364], 0xdc0fb6d
mov byte [esp + 0x33], al
jmp 0x507941
mov eax, dword [esp + 0x40c]
mov ecx, dword [esp + 0x408]
mov dword [esp], ecx
mov dword [esp + 0x2c], eax
call fcn.004e3e90
mov ecx, dword [esp + 0x360]
mov dword [esp + 0x28], eax
call fcn.004d6a50
mov ecx, dword [esp + 0x410]
mov edx, esp
mov esi, dword [esp + 0x2c]
mov dword [edx + 0x10], esi
mov edi, dword [esp + 0x28]
mov dword [edx + 0xc], edi
call fcn.00507cc0
mov eax, dword [esp + 0x35c]
call fcn.00507cd0
mov dword [edx + 4], 1
call fcn.0041fa40
sub esp, 0x14
mov dword [esp + 0x364], 0xd0f217fb
jmp 0x507941
mov dword [esp + 0x364], 0xb88938f0
jmp 0x507941
mov eax, dword [esp + 0x40c]
mov ecx, dword [esp + 0x408]
mov dword [esp], ecx
mov dword [esp + 0x20], eax
call fcn.004e3e90
mov ecx, dword [esp + 0x360]
mov dword [esp + 0x1c], eax
call fcn.004d6a50
mov ecx, dword [esp + 0x410]
mov edx, ecx
mov edx, esp
mov esi, dword [esp + 0x20]
mov dword [edx + 0x10], esi
mov edi, dword [esp + 0x1c]
mov dword [edx + 0xc], edi
mov dword [edx + 8], eax
mov eax, dword [esp + 0x35c]
mov dword [edx], eax
call fcn.00507cf0
call fcn.0041fa40
sub esp, 0x14
mov dword [esp + 0x364], 0x40c26ba4
jmp 0x507941
mov dword [esp + 0x364], 0xdf1d5062
jmp 0x507941
mov eax, dword [esp + 0x40c]
mov ecx, dword [esp + 0x408]
mov dword [esp], ecx
mov dword [esp + 0x18], eax
call fcn.004e3e90
mov ecx, dword [esp + 0x410]
mov dword [esp + 0x14], eax
call fcn.0041f8e0
mov eax, dword [eax]
mov ecx, dword [esp + 0x410]
mov edx, esp
mov esi, dword [esp + 0x18]
mov dword [edx + 0x10], esi
mov edi, dword [esp + 0x14]
mov dword [edx + 0xc], edi
mov dword [edx + 8], eax
mov eax, dword [esp + 0x35c]
mov dword [edx], eax
call fcn.00507d00
call fcn.0041fa40
sub esp, 0x14
mov dword [esp + 0x364], 0x11b307ed
jmp 0x507941
mov dword [esp + 0x364], 0x3e80409e
jmp 0x504fe1