Function at 0x43bc50
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4d4b1e
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x14
push ebx
push ebp
push esi
push edi
mov edi, ecx
mov eax, dword [edi + 0xc]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x288]
mov ecx, dword [edx + 8]
push 0
call fcn.00419410
mov eax, dword [edi + 0xc]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x288]
mov eax, dword [edx + 8]
mov ecx, dword [eax + 0xc]
call fcn.004032f0
mov ecx, dword [edi + 0x1c]
mov eax, dword [ecx + 4]
mov eax, dword [eax]
test eax, eax
mov dword [esp + 0x1c], eax
je 0x43cc4a
mov esi, dword [eax + 8]
mov eax, dword [esi + 8]
cmp eax, 5
mov ebx, 0x3e4ccccd
je 0x43bfc1
cmp eax, 0xa
jne 0x43bcf9
push 0
push esi
mov ecx, edi
call fcn.0043bb50
mov ecx, dword [esi + 0x84]
test ecx, ecx
je 0x43bfcb
push ebx
mov dword [ecx + 0x6c], 0x3dcccccd
mov dword [ecx + 0x70], ebx
call fcn.0041fac0
jmp 0x43bfcb
cmp eax, 0x44
jne 0x43bd39
push 0
push esi
mov ecx, edi
call fcn.0043bb50
mov ecx, dword [esi + 0x84]
test ecx, ecx
je 0x43bfcb
push 0x3ecccccd
mov dword [ecx + 0x94], 3
mov dword [ecx + 0x6c], 0x3dcccccd
mov dword [ecx + 0x70], ebx
call fcn.0041fac0
jmp 0x43bfcb
cmp eax, 7
jne 0x43bd86
push 0
push esi
mov ecx, edi
call fcn.0043bb50
xor ebp, ebp
lea ebx, [ebx]
push ebp
push 0xb
mov ecx, esi
call fcn.00419230
test eax, eax
je 0x43bd7b
mov eax, dword [eax + 0x20]
test eax, eax
je 0x43bd7b
mov edx, dword [edi + 0xc]
mov ecx, dword [edx + 0x103c]
push 2
push 0xbd4ccccd
push eax
call fcn.00420ee0
inc ebp
cmp ebp, 2
jb 0x43bd50
jmp 0x43bfcb
cmp eax, 0x1a
jne 0x43bdc6
push 0
push esi
mov ecx, edi
call fcn.0043bb50
mov ecx, dword [esi + 0x84]
test ecx, ecx
je 0x43bfcb
push 0x3e800000
mov dword [ecx + 0x94], 3
mov dword [ecx + 0x6c], 0x3dcccccd
mov dword [ecx + 0x70], ebx
call fcn.0041fac0
jmp 0x43bfcb
cmp eax, 6
je 0x43bfc1
cmp eax, 0x45
jne 0x43be13
push 0
push esi
mov ecx, edi
call fcn.0043bb50
mov ecx, dword [esi + 0x84]
test ecx, ecx
je 0x43bfcb
push 0x3f800000
mov dword [ecx + 0x94], 3
mov dword [ecx + 0x6c], 0x3dcccccd
mov dword [ecx + 0x70], 0x3e99999a
call fcn.0041fac0
jmp 0x43bfcb
lea ebp, [esi + 0x24]
push str.tmo_pipe
push ebp
call fcn.004c4d20
add esp, 8
test eax, eax
je 0x43bf5f
push 0
push esi
mov ecx, edi
call fcn.0043bb50
mov eax, dword [esi + 8]
cmp eax, 0x17
jne 0x43bea7
xor ebx, ebx
push ebx
mov ecx, esi
call fcn.00417e50
mov ebp, eax
mov dword [ebp + 0x100], ebx
mov dword [ebp + 0xfc], ebx
mov ebx, dword [ebp + 0x84]
test ebx, ebx
je 0x43be6b
push 0
push 0
mov ecx, ebx
call fcn.0041fa80
push 0x505298
mov ecx, ebp
call fcn.004188d0
push 0x3fc90fdb
push 0xbfc90fdb
push 1
push 0x3ccccccd
add eax, 0x24
push eax
mov eax, dword [edi + 0xc]
mov ecx, dword [eax + 0x103c]
push 0
push ebx
call fcn.00420360
mov ebx, 0x3e4ccccd
jmp 0x43bfcb
cmp eax, 0x19
jne 0x43bfcb
xor ebx, ebx
push ebx
mov ecx, esi
call fcn.00417e50
mov ebp, eax
mov dword [ebp + 0x100], ebx
mov dword [ebp + 0xfc], ebx
mov ebx, dword [ebp + 0x84]
test ebx, ebx
je 0x43bedd
push 0
push 0
mov ecx, ebx
call fcn.0041fa80
push 0x5052a4
mov ecx, ebp
call fcn.004188d0
push 0
mov ecx, ebp
mov dword [esp + 0x14], eax
call fcn.00418090
fld dword [eax + 0xe0]
fcomp dword [0x4f911c]
fnstsw ax
test ah, 0x41
jne 0x43bf2a
mov ecx, dword [esp + 0x10]
mov edx, dword [edi + 0xc]
push 0
push 0xbf490fdb
push 1
add ecx, 0x24
push 0x3ccccccd
push ecx
mov ecx, dword [edx + 0x103c]
jmp 0x43bf49
mov eax, dword [esp + 0x10]
mov ecx, dword [edi + 0xc]
mov ecx, dword [ecx + 0x103c]
push 0x3f490fdb
push 0
push 1
push 0x3ccccccd
add eax, 0x24
push eax
push 0
push ebx
call fcn.00420360
mov dword [esi + 0x14], 0xffffffff
mov ebx, 0x3e4ccccd
jmp 0x43bfcb
mov eax, dword [esi + 8]
cmp eax, 0x18
je 0x43bfc1
cmp eax, 0x13
je 0x43bfc1
cmp eax, 0x1b
je 0x43bfc1
push str.tmo_belt_gear
push ebp
call fcn.004c4d20
add esp, 8
test eax, eax
jne 0x43bfc1
mov eax, dword [esi + 8]
cmp eax, 0x26
jne 0x43bf9e
push 0
push esi
mov ecx, edi
call fcn.0043bb50
mov dword [esi + 0x14], 0xffffffff
jmp 0x43bfcb
cmp eax, 0x28
je 0x43bfc1
cmp eax, 0x29
je 0x43bfc1
cmp eax, 0x2a
je 0x43bfc1
cmp eax, 0x2b
je 0x43bfc1
cmp eax, 0x25
je 0x43bfc1
cmp eax, 0x40
je 0x43bfc1
cmp eax, 0x2c
jne 0x43bfcb
push 0
mov ecx, edi
push esi
call fcn.0043bb50
mov eax, dword [esi + 8]
cmp eax, 0x42
jne 0x43c070
xor ebx, ebx
push ebx
push esi
mov ecx, edi
call fcn.0043bb50
push ebx
mov ecx, esi
call fcn.00417e50
mov esi, eax
mov ebp, dword [esi + 0x84]
cmp ebp, ebx
mov dword [esi + 0x100], ebx
mov dword [esi + 0xfc], ebx
je 0x43c00b
push ebx
push ebx
mov ecx, ebp
call fcn.0041fa80
push str.MountBar
mov ecx, esi
call fcn.004188d0
push 0
mov ecx, esi
mov ebx, eax
call fcn.00418090
fld dword [eax + 0xe0]
fcomp dword [0x4f911c]
add ebx, 0x24
fnstsw ax
test ah, 0x41
jne 0x43c05d
mov edx, dword [edi + 0xc]
mov ecx, dword [edx + 0x103c]
push 0
push 0xbf490fdb
push 0
push 0x3c23d70a
push ebx
push 0
push ebp
call fcn.00420360
jmp 0x43cc38
push 0x3f490fdb
push 0
push 0
push 0x3c23d70a
jmp 0x43c254
cmp eax, 0x41
jne 0x43c189
push 0
push esi
mov ecx, edi
call fcn.0043bb50
push 0
mov ecx, esi
call fcn.00417e50
mov ebx, eax
push 1
mov ecx, esi
mov dword [esp + 0x18], ebx
call fcn.00417e50
mov ebp, dword [ebx + 0x84]
test ebp, ebp
mov ecx, dword [eax + 0x84]
mov dword [esp + 0x10], ecx
je 0x43c0ba
push 0
push 0
mov ecx, ebp
call fcn.0041fa80
mov eax, dword [esp + 0x10]
test eax, eax
je 0x43c0cd
push 0
push 0
mov ecx, eax
call fcn.0041fa80
push 0x5052cc
mov ecx, ebx
call fcn.004188d0
mov ecx, dword [esp + 0x14]
push 0
mov ebx, eax
call fcn.00418090
fld dword [eax + 0xe0]
mov edx, dword [esp + 0x10]
fcomp dword [0x4f911c]
add ebx, 0x24
fnstsw ax
test ah, 0x41
mov eax, dword [edi + 0xc]
mov ecx, dword [eax + 0x103c]
jne 0x43c12f
push 0x3f4ccccd
push 0xbc23d70a
push 1
push 0x3c23d70a
push ebx
push 0
push edx
call fcn.00420360
push 0x3c23d70a
push 0xbf4ccccd
jmp 0x43c153
push 0x3c23d70a
push 0xbf4ccccd
push 1
push 0x3c23d70a
push ebx
push 0
push edx
call fcn.00420360
push 0x3f4ccccd
push 0xbc23d70a
mov ecx, dword [edi + 0xc]
mov ecx, dword [ecx + 0x103c]
push 1
push 0x3c23d70a
push ebx
push 0
push ebp
call fcn.00420360
mov edx, dword [esi + 0x12c]
fld qword [edx]
mov dword [esi + 0xf4], 0x40000000
fstp qword [esi + 0x138]
jmp 0x43cc38
cmp eax, 0x43
jne 0x43c290
push 0
push esi
mov ecx, edi
call fcn.0043bb50
push 0
mov ecx, esi
call fcn.00417e50
mov ebx, eax
mov ebp, dword [ebx + 0x84]
test ebp, ebp
je 0x43c1d6
push 0x3f800000
mov ecx, ebp
mov dword [ebp + 0x6c], 0x3dcccccd
mov dword [ebp + 0x70], 0
call fcn.0041fac0
push 0
push 1
mov ecx, ebp
call fcn.0041fa80
xor eax, eax
mov dword [ebx + 0xfc], eax
mov dword [ebx + 0x100], eax
mov dword [ebx + 0x104], eax
push 1
mov ecx, esi
mov dword [esi + 0x10], eax
call fcn.00417e50
mov esi, eax
xor eax, eax
cmp ebp, eax
mov dword [esi + 0x100], eax
mov dword [esi + 0xfc], eax
je 0x43c219
mov ebp, dword [esi + 0x84]
push eax
push eax
mov ecx, ebp
call fcn.0041fa80
push 0x5052d8
mov ecx, esi
call fcn.004188d0
push 0
mov ecx, esi
mov ebx, eax
call fcn.00418090
fld dword [eax + 0xe0]
fcomp dword [0x4f911c]
add ebx, 0x24
fnstsw ax
test ah, 0x41
jne 0x43c26b
push 0
push 0xbf490fdb
push 1
push 0x3dcccccd
mov eax, dword [edi + 0xc]
mov ecx, dword [eax + 0x103c]
push ebx
push 0
push ebp
call fcn.00420360
jmp 0x43cc38
mov ecx, dword [edi + 0xc]
mov ecx, dword [ecx + 0x103c]
push 0x3f490fdb
push 0
push 1
push 0x3dcccccd
push ebx
push 0
push ebp
call fcn.00420360
jmp 0x43cc38
cmp eax, 0x3a
jne 0x43c2c7
push 0
push esi
mov ecx, edi
call fcn.0043bb50
push 0
push 4
mov ecx, esi
call fcn.00419230
mov edx, dword [eax + 0x20]
mov eax, dword [edx]
mov ecx, dword [edi + 0xc]
mov ecx, dword [ecx + 0x103c]
push 1
push 0
push eax
call fcn.00420ee0
jmp 0x43cc38
cmp eax, 0x3d
jne 0x43c2fd
push 0
push esi
mov ecx, edi
call fcn.0043bb50
push 0
push 4
mov ecx, esi
call fcn.00419230
mov edx, dword [eax + 0x20]
mov eax, dword [edx]
mov ecx, dword [edi + 0xc]
mov ecx, dword [ecx + 0x103c]
push 1
push 0
push eax
call fcn.00420ee0
push 1
jmp 0x43c2a1
cmp eax, 0x3e
jne 0x43c3ad
push 1
push esi
mov ecx, edi
call fcn.0043bb50
mov ebp, dword [esi + 0x84]
test ebp, ebp
je 0x43c348
push 0x40a00000
mov ecx, ebp
mov dword [ebp + 0x94], 1
mov dword [ebp + 0x6c], 0x3c23d70a
mov dword [ebp + 0x70], 0x3f000000
call fcn.0041fac0
mov dword [ebp + 0x74], 0x3f000000
mov dword [ebp + 0x78], ebx
fld dword [esi + 0xf4]
fcomp dword [0x4f911c]
fnstsw ax
test ah, 0x44
jnp 0x43cc38
test byte [0x50f484], 1
jne 0x43c399
or dword [0x50f484], 1
mov edx, dword [edi + 0xc]
mov eax, dword [edx]
mov ecx, dword [eax + 0xfc]
push str.SOUND_FX_ZEPPELIN
mov dword [esp + 0x30], 0
call fcn.00450d50
mov dword [0x50f480], eax
mov dword [esp + 0x2c], 0xffffffff
mov ecx, dword [0x50f480]
push 0
push 0xfffffffffffffffe
call fcn.00465df0
jmp 0x43cc38
cmp eax, 0x3c
jne 0x43c3c1
push 0
push esi
mov ecx, edi
call fcn.0043bb50
jmp 0x43cc38
cmp eax, 0x49
jne 0x43c3d5
push 0
push esi
mov ecx, edi
call fcn.0043bb50
jmp 0x43cc38
cmp eax, 0x4b
jne 0x43c3e9
push 0
push esi
mov ecx, edi
call fcn.0043bb50
jmp 0x43cc38
lea ebp, [esi + 0x24]
push 0x5052f8
push ebp
call fcn.004c4d20
add esp, 8
test eax, eax
je 0x43c478
push str.tmo_candle
push ebp
call fcn.00403640
add esp, 8
test eax, eax
je 0x43c41f
push 0
push esi
mov ecx, edi
call fcn.0043bb50
jmp 0x43cc38
push 2
mov ecx, esi
call fcn.00418090
push 0
push 0xffffffffffffffff
lea ecx, [eax + 0x68]
push ecx
mov ecx, dword [eax + 0x5c]
push 0
push esi
call fcn.00447af0
mov edx, dword [edi + 0xc]
mov ecx, dword [edx + 0x103c]
push eax
call fcn.00420d30
test eax, eax
mov dword [esi + 0x84], eax
je 0x43cc38
mov dword [eax + 0x94], 1
mov dword [eax + 0x6c], ebx
mov dword [eax + 0x70], 0x3ecccccd
push 0x3f19999a
mov ecx, eax
jmp 0x43cc33
mov eax, dword [esi + 8]
cmp eax, 0x32
jne 0x43c48f
push 0
push esi
mov ecx, edi
call fcn.0043bb50
jmp 0x43cc38
cmp eax, 0x31
jne 0x43c4e5
push 0
push esi
mov ecx, edi
call fcn.0043bb50
push 0
push str.tmo_heat_cannon_ball
mov ecx, esi
call fcn.00417ee0
mov esi, dword [eax + 0x84]
test esi, esi
je 0x43cc38
push 0x40a00000
mov ecx, esi
mov dword [esi + 0x6c], ebx
mov dword [esi + 0x70], ebx
call fcn.0041fac0
push 0
push 1
mov ecx, esi
call fcn.0041fa80
push 0
mov ecx, esi
call fcn.0041e2f0
jmp 0x43cc38
cmp eax, 0x33
jne 0x43c572
push 0
push esi
mov ecx, edi
call fcn.0043bb50
push 0
push str.tmo_heat_rocket_rocket
mov ecx, esi
call fcn.00417ee0
mov ebx, eax
mov ebp, dword [ebx + 0x84]
test ebp, ebp
je 0x43c55f
push 0x40000000
mov ecx, ebp
mov dword [ebp + 0x6c], 0x3e800000
mov dword [ebp + 0x70], 0
call fcn.0041fac0
push 0
push 1
mov ecx, ebp
mov dword [ebp + 0x74], 0x3a83126f
mov dword [ebp + 0x78], 0x3c23d70a
call fcn.0041fa80
add esi, 0x88
push esi
push 1
mov ecx, ebp
call fcn.0041e340
mov dword [ebp + 0x9c], 1
xor eax, eax
mov dword [ebx + 0xfc], eax
mov dword [ebx + 0x100], eax
jmp 0x43cc38
cmp eax, 0x34
jne 0x43c586
push 0
push esi
mov ecx, edi
call fcn.0043bb50
jmp 0x43cc38
cmp eax, 0x21
jne 0x43c59a
push 0
push esi
mov ecx, edi
call fcn.0043bb50
jmp 0x43cc38
cmp eax, 0x22
jne 0x43c5ae
push 0
push esi
mov ecx, edi
call fcn.0043bb50
jmp 0x43cc38
cmp eax, 0x23
jne 0x43c5c9
push 0
push esi
mov ecx, edi
call fcn.0043bb50
mov dword [esi + 0x14], 0xffffffff
jmp 0x43cc38
cmp eax, 0x24
jne 0x43c5dd
push 0
push esi
mov ecx, edi
call fcn.0043bb50
jmp 0x43cc38
cmp eax, 0x27
jne 0x43c5f1
push 0
push esi
mov ecx, edi
call fcn.0043bb50
jmp 0x43cc38
cmp eax, 0x3b
jne 0x43c628
push 0
push esi
mov ecx, edi
call fcn.0043bb50
push 0
push 4
mov ecx, esi
call fcn.00419230
mov eax, dword [eax + 0x20]
mov ecx, dword [eax]
mov edx, dword [edi + 0xc]
push 1
push 0
push ecx
mov ecx, dword [edx + 0x103c]
call fcn.00420ee0
jmp 0x43cc38
cmp eax, 0x20
jne 0x43c63c
push 0
push esi
mov ecx, edi
call fcn.0043bb50
jmp 0x43cc38
cmp eax, 4
jne 0x43c650
push 0
push esi
mov ecx, edi
call fcn.0043bb50
jmp 0x43cc38
cmp eax, 0x1e
jne 0x43c664
push 0
push esi
mov ecx, edi
call fcn.0043bb50
jmp 0x43cc38
cmp eax, 0x4a
jne 0x43c678
push 0
push esi
mov ecx, edi
call fcn.0043bb50
jmp 0x43cc38
cmp eax, 3
jne 0x43c6c8
xor ebx, ebx
push ebx
push esi
mov ecx, edi
call fcn.0043bb50
push ebx
push str.tmo_catapult_sling
mov ecx, esi
call fcn.00417ee0
mov ebp, eax
mov esi, dword [ebp + 0x84]
cmp esi, ebx
je 0x43c6b7
push 0x42c80000
mov ecx, esi
call fcn.0041fac0
push ebx
push 1
mov ecx, esi
call fcn.0041fa80
mov dword [ebp + 0xfc], ebx
mov dword [ebp + 0x100], ebx
jmp 0x43cc38
cmp eax, 0x2d
jne 0x43c794
push 0
push esi
mov ecx, edi
call fcn.0043bb50
push 0
push str.tmo_power_pushbutton_lever
mov ecx, esi
call fcn.00417ee0
mov ebx, eax
mov ebp, dword [ebx + 0x84]
mov eax, dword [esi + 0x84]
push 0x40066666
mov ecx, ebp
mov dword [esp + 0x14], eax
call fcn.0041fac0
push 0
push 0
mov ecx, ebp
call fcn.0041fa80
push 0x505370
mov ecx, esi
call fcn.004188d0
push 0
mov ecx, ebx
mov esi, eax
call fcn.00418090
fld dword [eax + 0xe0]
fcomp dword [0x4f911c]
add esi, 0x24
fnstsw ax
test ah, 0x41
jne 0x43c75e
mov ecx, dword [esp + 0x10]
mov edx, dword [edi + 0xc]
push 0x3e20d97c
push 0
push 1
push 0x3a83126f
push esi
push ecx
mov ecx, dword [edx + 0x103c]
jmp 0x43c77b
mov eax, dword [esp + 0x10]
mov ecx, dword [edi + 0xc]
mov ecx, dword [ecx + 0x103c]
push 0
push 0xbe20d97c
push 1
push 0x3a83126f
push esi
push eax
push ebp
call fcn.00420360
xor eax, eax
mov dword [ebx + 0xfc], eax
mov dword [ebx + 0x100], eax
jmp 0x43cc38
cmp eax, 0xb
jne 0x43c880
push 0
push esi
mov ecx, edi
call fcn.0043bb50
push 0
push str.tmo_trap_door_board
mov ecx, esi
call fcn.00417ee0
mov ebp, eax
mov ebx, dword [ebp + 0x84]
push 0x3f800000
mov ecx, ebx
call fcn.0041fac0
push 0
push 1
mov ecx, ebx
call fcn.0041fa80
xor eax, eax
push eax
push str.tmo_trap_door_lever
mov ecx, esi
mov dword [ebp + 0xfc], eax
mov dword [ebp + 0x100], eax
call fcn.00417ee0
mov ebx, eax
mov ebp, dword [ebx + 0x84]
push 0x40a00000
mov ecx, ebp
call fcn.0041fac0
push 0
push 0
mov ecx, ebp
call fcn.0041fa80
push str.Mechanic02
mov ecx, esi
call fcn.004188d0
push 0
mov ecx, ebx
mov esi, eax
call fcn.00418090
fld dword [eax + 0xe0]
fcomp dword [0x4f911c]
add esi, 0x24
fnstsw ax
test ah, 0x41
jne 0x43c84d
mov edx, dword [edi + 0xc]
mov ecx, dword [edx + 0x103c]
push 0
push 0xbf860a92
jmp 0x43c85d
mov eax, dword [edi + 0xc]
mov ecx, dword [eax + 0x103c]
push 0x3f860a92
push 0
push 1
push 0x3ccccccd
push esi
push 0
push ebp
call fcn.00420360
xor eax, eax
mov dword [ebx + 0xfc], eax
mov dword [ebx + 0x100], eax
jmp 0x43cc38
cmp eax, 0x35
je 0x43c5b3
cmp eax, 0x37
jne 0x43c89d
push 0
push esi
mov ecx, edi
call fcn.0043bb50
jmp 0x43cc38
cmp eax, 0x47
jne 0x43c8e3
push 0
push esi
mov ecx, edi
call fcn.0043bb50
mov esi, dword [esi + 0x84]
test esi, esi
je 0x43cc38
push 0x3f000000
mov ecx, esi
mov dword [esi + 0x6c], ebx
mov dword [esi + 0x70], 0x3f000000
call fcn.0041fac0
mov dword [esi + 0x74], 0x3e99999a
mov dword [esi + 0x78], 0x3dcccccd
jmp 0x43cc38
cmp eax, 1
je 0x43c8ed
cmp eax, 0x48
jne 0x43c912
push 0
push esi
mov ecx, edi
call fcn.0043bb50
mov esi, dword [esi + 0x84]
test esi, esi
je 0x43cc38
mov dword [esi + 0x70], 0x3e99999a
push ebx
jmp 0x43cc2e
cmp eax, 0xc
jne 0x43ca44
push 1
push esi
mov ecx, edi
call fcn.0043bb50
mov ecx, dword [esi + 0x84]
test ecx, ecx
mov dword [esp + 0x14], ecx
je 0x43c94b
push 0x3f000000
mov dword [ecx + 0x6c], 0x3dcccccd
mov dword [ecx + 0x70], 0x3e99999a
call fcn.0041fac0
mov dword [esp + 0x10], 0
mov ecx, dword [esp + 0x10]
push ecx
mov ecx, esi
call fcn.00417e50
mov ebp, eax
push 0
push ebp
mov ecx, edi
call fcn.0043bb50
mov ebx, dword [ebp + 0x84]
test ebx, ebx
je 0x43c98f
push 0x3f000000
mov ecx, ebx
mov dword [ebx + 0x6c], 0x3e4ccccd
mov dword [ebx + 0x70], 0x3f19999a
call fcn.0041fac0
mov eax, dword [esp + 0x14]
mov ecx, dword [edi + 0xc]
mov ecx, dword [ecx + 0x103c]
push 0
push 0x3f800000
push 0
push 0x3d4ccccd
lea edx, [ebp + 0x88]
push edx
push ebx
push eax
call fcn.00420360
mov dword [ebp + 0x80], eax
mov eax, dword [esp + 0x10]
inc eax
cmp eax, 3
mov dword [esp + 0x10], eax
jb 0x43c953
mov ecx, dword [edi + 0xc]
push esi
call fcn.00426760
test byte [0x50f484], 2
jne 0x43ca0f
or dword [0x50f484], 2
mov edx, dword [edi + 0xc]
mov eax, dword [edx]
mov ecx, dword [eax + 0xfc]
push str.SOUND_FX_ROBOT
mov dword [esp + 0x30], 1
call fcn.00450d50
mov dword [0x50f47c], eax
mov dword [esp + 0x2c], 0xffffffff
fld dword [esi + 0xf4]
mov dword [esi + 0x14], 0xffffffff
fcomp dword [0x4f911c]
fnstsw ax
test ah, 0x44
jnp 0x43cc38
mov ecx, dword [0x50f47c]
push 0
push 0xfffffffffffffffe
call fcn.00465df0
mov dword [esi + 0x14], eax
jmp 0x43cc38
cmp eax, 0x46
jne 0x43ca7f
push 0
push esi
mov ecx, edi
call fcn.0043bb50
mov esi, dword [esi + 0x84]
test esi, esi
je 0x43cc38
mov dword [esi + 0x94], 3
mov dword [esi + 0x6c], 0x3dcccccd
mov dword [esi + 0x70], ebx
push 0x3f333333
jmp 0x43cc31
cmp eax, 2
jne 0x43cab4
push 0
push esi
mov ecx, edi
call fcn.0043bb50
mov esi, dword [esi + 0x84]
test esi, esi
je 0x43cc38
mov dword [esi + 0x6c], 0x3dcccccd
mov dword [esi + 0x70], 0x3e99999a
push 0x3e99999a
jmp 0x43cc31
cmp eax, 0x30
je 0x43cabe
cmp eax, 0x38
jne 0x43caea
push 0
push esi
mov ecx, edi
call fcn.0043bb50
mov esi, dword [esi + 0x84]
test esi, esi
je 0x43cc38
mov dword [esi + 0x6c], 0x3dcccccd
mov dword [esi + 0x70], 0x3e99999a
push ebx
jmp 0x43cc31
cmp eax, 0x4c
je 0x43cc12
cmp eax, 0x4d
je 0x43cc12
cmp eax, 0x4e
je 0x43cc12
push 0x5053c0
push ebp
call fcn.004c4d20
add esp, 8
test eax, eax
je 0x43cc38
push 0
push esi
mov ecx, edi
call fcn.0043bb50
mov ebp, dword [esi + 0x84]
mov esi, dword [esi + 8]
cmp esi, 0x10
jne 0x43cb49
test ebp, ebp
je 0x43cb49
mov dword [ebp + 0x6c], ebx
mov dword [ebp + 0x70], ebx
push 0x3f333333
mov ecx, ebp
jmp 0x43cc33
cmp esi, 0xe
jne 0x43cb6c
test ebp, ebp
je 0x43cb6c
mov dword [ebp + 0x6c], 0x3f333333
mov dword [ebp + 0x70], 0x3e99999a
push 0x3e99999a
mov ecx, ebp
jmp 0x43cc33
cmp esi, 0x11
jne 0x43cb9b
test ebp, ebp
je 0x43cb9b
push 0x3dcccccd
mov ecx, ebp
mov dword [ebp + 0x6c], 0x3f666666
mov dword [ebp + 0x70], 0x3c23d70a
call fcn.0041fac0
mov dword [ebp + 0x74], 0x37a7c5ac
jmp 0x43cc38
cmp esi, 0x12
jne 0x43cbbd
test ebp, ebp
je 0x43cbbd
mov dword [ebp + 0x94], 3
mov dword [ebp + 0x6c], ebx
mov dword [ebp + 0x70], ebx
push 0x3f333333
mov ecx, ebp
jmp 0x43cc33
cmp esi, 0xf
jne 0x43cbd9
test ebp, ebp
je 0x43cbd9
mov dword [ebp + 0x6c], 0x3f333333
mov dword [ebp + 0x70], ebx
push 0x3f000000
mov ecx, ebp
jmp 0x43cc33
cmp esi, 0xd
jne 0x43cc38
test ebp, ebp
je 0x43cc38
push 0x3dcccccd
mov ecx, ebp
mov dword [ebp + 0x6c], 0x3f000000
mov dword [ebp + 0x70], ebx
call fcn.0041fac0
mov dword [ebp + 0x74], 0x3be56042
mov dword [ebp + 0x78], 0x3b83126f
mov dword [ebp + 0x94], 1
jmp 0x43cc38
push 0
push esi
mov ecx, edi
call fcn.0043bb50
mov esi, dword [esi + 0x84]
test esi, esi
je 0x43cc38
mov dword [esi + 0x70], ebx
push 0x3f333333
mov dword [esi + 0x6c], ebx
mov ecx, esi
call fcn.0041fac0
mov ecx, dword [esp + 0x1c]
mov eax, dword [ecx]
test eax, eax
mov dword [esp + 0x1c], eax
jne 0x43bcb3
mov ecx, dword [esp + 0x24]
pop edi
mov dword fs:[0], ecx
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret